Назад | Перейти на главную страницу

nginx не отвечает на мониторинг

Хотя EngineX работает, похоже, что monit не может этого понять.

Вот мой журнал мониторинга:

[PDT Apr 13 02:19:19] error    : HTTP error: Server returned status 400
[PDT Apr 13 02:19:19] error    : 'nginx' failed protocol test [HTTP] at INET[localhost:80] via TCP
[PDT Apr 13 02:19:19] info     : 'nginx' trying to restart
[PDT Apr 13 02:19:19] info     : 'nginx' stop: /etc/init.d/nginx
[PDT Apr 13 02:19:20] info     : 'nginx' start: /etc/init.d/nginx

Файл monitrc содержит следующую конфигурацию:

if failed port 80 protocol http and request '/ping.txt' # check for response
     with timeout 20 seconds
     then restart

Я могу получить доступ к файлу через рысь http: // локальный: 80 / ping.txt без проблем.

Почему у monit проблемы с запросом файла, когда nginx работает нормально?

Проблема оказалась причиной несоответствия версий.

Мой исходный файл monitrc был предназначен для версии v5 +, но в окне, на котором он работал, использовался Monit 4.1.

Nginx старше 0.6.15 возвращал 400 на такие запросы, как GET http://www.domain.com HTTP / 1.0. Я полагаю, вы обновляли Nginx за последние два года? Если да, попробуйте поднять уровень отладки Nginx и опубликовать логи здесь.