@Andronas

Nginx не стартует, но проверка конфига не показывает ошибок?

Nginx 1.12.0, Linux RH 7.2
Установил, сделал конфиг - проверка конфига выдает что все ок:

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


Запускаю, выдает ошибку:

systemctl start nginx.service
Job for nginx.service failed because the control process exited with error code. See "systemctl status nginx.service" and "journalctl -xe" for details.

смотрю логи:

Starting nginx - high performance web server...
nginx: [emerg] "events" directive is not allowed here in /etc/nginx/conf.d/ev1.conf:1
nginx: configuration file /etc/nginx/nginx.conf test failed
nginx.service: control process exited, code=exited status=1

Запускаю со стандартным конфигом - запускается без ошибок. Возвращаю конфиг - снова ошибки. Как понять что не так с конфигом (тест конфига проходит нормально).
  • Вопрос задан
  • 44490 просмотров
Решения вопроса 2
Endru9
@Endru9
Админ Linux
"events" directive is not allowed here in /etc/nginx/conf.d/ev1.conf:1

вот говорит же.
проверка nginx делается командой:
nginx -t
Ответ написан
Комментировать
@Erelecano
Админю сервера, починяю примуса.
А вы проверяйте не один отдельно взятый, а делайте nginx -t и проверяйте все конфиги. Судя по всему у вас этот конфиг инклюдится из другого и тогда приходит нарушение расположения директивы.
events может быть только в main, а вы засунули куда-нибудь внутрь конфигов хостов.
переносите в nginx.conf или инклюдьте из верного места в nginx.conf.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
@pfg21
ex-турист
проверь от имени юзера под которым стартует nginx в systemd
к примеру
sudo -u %user% nginx -t
Ответ написан
@Andronas Автор вопроса
Всем спасибо, проблема оказалась в том что в главном конфиге который в /etc/nginx/nginx.conf были секции которые дублировались в конфиге /etc/nginx/conf.d/ev1.conf
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы