После того как конфигурационные файлы веб-сервера отредактированы необходимо перезапустить 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 конфигурируют специальным образом, что дает максимальную производительность. Для небольших проектов выполнить такие настройки тоже может оказаться полезно.