long deprecated directives

Maxim Dounin mdounin на mdounin.ru
Ср Июл 6 19:15:19 UTC 2022


Hello!

On Wed, Jul 06, 2022 at 08:15:43AM +0300, Gena Makhomed wrote:

> On 06.07.2022 4:52, Maxim Dounin wrote:
> 
> > Возможность задавать конфигурацию с помощью "listen ... ssl"
> > появилась в nginx 0.7.14.
> 
> > У вас явно некорректная конфигурация, использующая "ssl on;".
> 
> Кстати, директива "ssl on;" находится в состоянии deprecated
> начиная с версии 1.15.0, вышедшей 05 Jun 2018, более 4 лет тому назад.
> 
> Может быть имеет смысл превратить warning в error, удалив
> эту директиву из nginx и оставив только возможность "listen ... ssl" ?
> 
> Тогда у пользователей будет меньше возможностей для создания
> конфигураций, которые будут приводить к ошибкам такого вида:
> 400 Bad Request The plain HTTP request was sent to HTTPS port
> 
> Аналогичный вопрос и по остальным deprecated директивам:
> 
> proxy_downstream_buffer
> proxy_upstream_buffer
> http2_idle_timeout
> http2_max_field_size
> http2_max_header_size
> http2_max_requests
> http2_recv_timeout
> 
> - может быть имеет смысл их удалить из nginx?

Удалить и заменить warning на фатальную ошибку - это два разных 
действия.

Удаление директив позволяет избавиться от лишнего кода и больше об 
этом не думать.  Обычно это делается, когда про существование 
директив забывают практически все, и/или наличие соответствующего 
кода начинает раздражать/мешать.  Для упомянутых директив такой 
момент, кажется, ещё не наступил.

Заменить warning на фатальную ошибку - как показала практика, не 
имеет смысла примерно никогда.  Пока директива реально 
встречается в конфигах - warning даёт возможность переписать их в 
удобном администратору темпе, и соответственно предпочтительнее.  
А когда встречаться перестаёт - наступает момент для удаления 
директивы.

-- 
Maxim Dounin
http://mdounin.ru/



Подробная информация о списке рассылки nginx-ru