Проверка конфигурации и перезапуск Nginx

После того как конфигурационные файлы веб-сервера отредактированы необходимо перезапустить nginx чтобы произошло их повторное считывание.

 

Перед перезапуском веб-сервера nginx всегда имеет смысл тестировать корректность конфигурационных файлов, при наличии ошибок nginx может не запуститься, что вызовет неработоспособность сайта или сервиса, который обслуживает веб-сервер.

 

Как протестировать конфигурацию и перезапустить nginx

Проверить правильность синтаксиса конфигов можно выполнив следующую команду

 

nginx -t

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

 

При положительном результате в выводе будет приведенное выше сообщение или Syntax OK в зависимости от версии пакета. Если найдены ошибки выведутся названия файлов и строки на которых ошибки обнаружены.

Похожим образом тестируется конфигурация Apache (apache2ctl -t)

 

После тестирования серверу необходимо дать команду на перечитывание конфигов (опция -s обозначает signal, серверу можно отправить множество сигналом, но чаще всего это reload, stop и start)

nginx -s reload

 

Если ошибки все же есть и конфиги предварительно не тестировались nginx -s reload перезапустит nginx только в случае если к остановке веб-сервера это не приведет, т.е. если серьезных ошибок в конфигурации нет

 

Чтобы выполнить полную перезагрузку необходимо выполнить

 

/etc/init.d/nginx restart

 

Конфигурационные файлы при этом не тестируются. Выполнение команды необходимо при внесении каких-либо существенных изменений когда простого reload недостаточно.

 

 


Если Nginx по какой-то причине не останавливается (т.е. после выполнения /etc/init.d/nginx stop в выводе ps aux | grep nginx  остаются процессы) процессы требуется завершить вручную, затем запустить Nginx.

Такое бывает если пакет собирался из исходников и для него не написаны инициализационные скрипты.

 

pkill nginx

 

/etc/init.d/nginx start


 

При работе в нагруженных проектах, обслуживающих сайты с посещаемостью в десятки тысяч человек в сутки и более, NGINX конфигурируют специальным образом, что дает максимальную производительность. Для небольших проектов выполнить такие настройки тоже  может оказаться полезно.