Welcome! Log In Create A New Profile

Advanced

Re: nginx: [emerg] no handler for server in /etc/nginx/nginx.conf:7

Hennadii Makhomed
July 16, 2024 05:58AM
On 27.06.2024 15:02, Roman Arutyunyan wrote:

>> stream {
>> server {
>> listen [::]:443 bind default_server ssl;
>> listen 443 bind default_server ssl;
>> ssl_reject_handshake on;
>> }
>> }
>>
>> при попытке его тестирования - получаю ошибку:
>>
>> # nginx -t
>> nginx: [emerg] no handler for server in /etc/nginx/nginx.conf:7
>> nginx: configuration file /etc/nginx/nginx.conf test failed
>>
>> если в конфиге поменять слово stream на http
>> - тогда тестирование конфига происходит без проблем.
>>
>> почему такое отличие, это ошибка в nginx? можно ли ее исправить,
>> чтобы директива ssl_reject_handshake вела себя одинаково,
>> и в контексте http и в контексте stream?
>
> Отличие в том, что в http есть дефолтные хендлеры, а в stream их нет т.к. семантика более общая.
>
> Если в конфиге есть ssl_reject_handshake, то действительно можно было бы не требовать наличие хендлера.
> Однако проверять такое очень неудобно. Переносить ошибку в рантайм тоже не хочется.
> В общем, наверное надо как-то улучшить, но хорошего способа пока не вижу.

По сути, директива ssl_reject_handshake выполняет роль хендлера,
потому что эта директива завершает соединение еще на уровне SSL,
так что какой бы там внутри другой хендлер не был бы прописан -
он не сработает - до обработки им запроса дело просто не дойдет.

Хороший способ улучшить - отобразить это в коде, в явном виде.
В таком случае не нужно будет убирать обязательное требование
наличия хендлера и не нужно будет переносить ошибку в рантайм.

Можно так сделать?

--
Best regards,
Gena

_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
https://mailman.nginx.org/mailman/listinfo/nginx-ru
Subject Author Posted

nginx: [emerg] no handler for server in /etc/nginx/nginx.conf:7

Gena Makhomed June 05, 2024 11:44AM

Re: nginx: [emerg] no handler for server in /etc/nginx/nginx.conf:7

Roman Arutyunyan June 27, 2024 09:04AM

Re: nginx: [emerg] no handler for server in /etc/nginx/nginx.conf:7

Roman Arutyunyan July 11, 2024 11:00AM

Re: nginx: [emerg] no handler for server in /etc/nginx/nginx.conf:7

Hennadii Makhomed July 11, 2024 12:48PM

Re: nginx: [emerg] no handler for server in /etc/nginx/nginx.conf:7

Roman Arutyunyan July 11, 2024 12:54PM

Re: nginx: [emerg] no handler for server in /etc/nginx/nginx.conf:7

Hennadii Makhomed July 11, 2024 02:26PM

Re: nginx: [emerg] no handler for server in /etc/nginx/nginx.conf:7

Hennadii Makhomed July 16, 2024 05:58AM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 161
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 500 on July 15, 2024
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready