ExecStartPre=/usr/sbin/nginx -t -c /etc/nginx/nginx.conf

Maxim Dounin mdounin на mdounin.ru
Чт Ноя 9 16:32:41 UTC 2017


Hello!

On Thu, Nov 09, 2017 at 06:06:08PM +0200, Gena Makhomed wrote:

> On 09.11.2017 16:56, Maxim Dounin wrote:
> 
> >> Ресолвер в конфиге я включал только из-за директивы "ssl_stapling on".
> >>
> >> Но ведь ssl_stapling - это дополнительная функциональность,
> >> nginx же вполне может запуститься и работать вообще без ssl_stapling.
> >>
> >> Тем более, что это был даже не запуск nginx, а просто проверка конфига.
> >>
> >> Может быть во время проверки конфига на валидность имеет смысл
> >> вообще не ждать по 90 секунд неизвестно чего из-за директивы
> >> "ssl_stapling on" ?
> 
> > При использовании ssl_stapling nginx использует getaddrinfo() (то
> > есть системный резолвер) для получения адресов на старте, а в
> > процессе работы - обновляет адреса с помощью заданных в директиве
> > resolver DNS-серверов.
> > 
> > Так что сколько именно секунд ждать - это вопрос в первую очередь
> > к настройкам системного резолвера.
> 
> В функции ngx_ssl_stapling_responder()
> вызывается функция ngx_parse_url(), из нее вызывается
> ngx_parse_inet_url(), оттуда вызывается ngx_inet_resolve_host()
> которая вызывает getaddrinfo().
> 
> Не понятно другое,
> зачем при парсинге урлов из сертификатов надо ресолвить хосты?

Полученные адреса используются для получения OCSP-ответов, 
если директива resolver не задана в конфигурации.

[...]

> И тогда при использовании ssl_stapling
> можно будет не ресолвить хост, и nginx будет запускаться нормально,
> даже если есть временные проблемы с системным ресолвером?
> 
> Сейчас же - из-за *временных* проблем с системным ресолвером
> полностью не стартует сервис nginx. Это как-то неправильно.

Из приведённого лога очевидно, что каких-либо проблем со стороны 
nginx'а - нет.  Старт не состоялся исключительно из-за того, что 
systemd решил, что nginx стартует слишком медленно.  Это выглядит 
скорее как вопрос к настройкам системного резолвера и systemd, чем 
как вопрос к поведению nginx'а.

[...]

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


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