Nginx не перезагружается - как отследить, почему?

88

Привет, у меня был сервер Nginx, отлично работающий на сервере Ubuntu 12.04.

Я постепенно болтал на разных битах и дошел до оптимизации времени загрузки на моей странице Wordpress.

После внесения нескольких изменений в файл моих хостов я решил:

sudo /etc/init.d/nginx reload

К чему я получу:

  • Reloading nginx configuration nginx [fail]

Никакой дополнительной информации или рассуждений не приводится. Как я могу перезапустить свой сервер, чтобы он печатал любые операторы ошибок во время перезагрузки, поэтому я могу начать отслеживать ошибку.

За бонусный вопрос:

Для тех системных администраторов Nginx, когда вы сделали кучу изменений на хостах и закрепили несколько других бит, и вдруг ваш сервер nginx не перезагрузится (кстати, все по-прежнему работает!), как вы начинаете подход к изолированию, почему или начинаете ломать все, чтобы отлаживать!

    
задан Huw 05.04.2014 в 20:32
источник

8 ответов

132

Проверьте syslog (/ var / log / syslog) на сообщения о проблемах с конфигурационным файлом.

Из командной строки вы можете запустить:

nginx -c /etc/nginx/nginx.conf -t

, чтобы nginx проверил вашу конфигурацию на наличие ошибок.     

ответ дан Dlloyd 05.04.2014 в 22:54
источник
41

Запустите эту команду, вы можете найти проблему.

sudo nginx -t
    
ответ дан Nanhe Kumar 22.10.2014 в 07:46
5

Вероятно, вы должны проверить наличие ошибок в /var/log/nginx/error.log .

В моем случае я не добавил порт для ipv6. Вы также должны это сделать (если вы используете nginx на порту, отличном от 80): listen [::]:8000 default_server ipv6only=on;

    
ответ дан Arvind07 29.09.2015 в 06:19
3

Проверьте свой /etc/nginx/sites-available/default или любую другую его копию, и убедитесь, что вы раскомментируете (удалите # ) любой } , который вам может понадобиться в отношении { , который, вероятно, был раскован. Это была моя проблема.

    
ответ дан kenisfis 11.09.2014 в 18:06
3

Я выполнил эти команды, чтобы восстановить nginx и работать:

# remove nginx conf files
apt-get purge nginx

# reinstall
apt-get install nginx

# make sure the default site is enabled
ln -s /etc/nginx/sites-available/default /etc/nginx/sites-enabled/default

# start nginx
sudo /etc/init.d/nginx start 

nginx теперь работает !!     

ответ дан Aaron Lelevier 20.04.2015 в 02:49
2

Необходимо очистить nginx затем введите в командной строке:

ln -s /etc/nginx/sites-availbale/default .etc/nginx/sites-enabled/default
    
ответ дан user445400 01.09.2015 в 05:37
1

выполните повторное открытие всех файлов, используя

nginx -s reopen

затем используйте

nginx -s reload

Как подсказка nginx показывает, что она перезагрузит nginx, посылая сигнал мастеру process.it, должен работать.

Запрос: пожалуйста, предоставьте команды purge без предупреждения, так как это может вызвать проблемы для новичков (все конфигурации будут потеряны) .... БОЛЬШАЯ проблема.

    
ответ дан Anto P Joseph 29.05.2017 в 08:49
1

Если это дает вам такие ошибки, вы можете проверить journalctl -xe out.
В нем есть куча информации о том, что произошло в оперативной системе.
вы можете найти строку или просто journalctl -xe | grep nginx , чтобы узнать, что произошло с nginx, когда оно пыталось запустить сам.

    
ответ дан TechJS 20.07.2017 в 21:47