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

apache httpd перезагружается каждые 24 часа

У меня есть Apache / 2.2.22 (Linux / SUSE), и он автоматически перезагружается каждый день в одно и то же время. У меня нет заданий cron, настроенных для этого для любого пользователя.

Я начал собирать мельчайшие снимки страницы статуса и из этого выяснил, что:

Restart Time: Friday, 31-Jan-2014 12:15:03 EET
Restart Time: Saturday, 01-Feb-2014 12:15:04 EET
Restart Time: Sunday, 02-Feb-2014 12:15:05 EET
Restart Time: Monday, 03-Feb-2014 12:15:06 EET

Из мгновенных снимков страницы состояния выясняется, что до перезапуска значимого трафика не было.

При каждом перезапуске я получаю следующее /var/log/messages без ничего интересного:

2014-02-03T12:15:02.576970+02:00 foobar systemd[1]: Reloading apache.
2014-02-03T12:15:03.225024+02:00 foobar start_apache2[15393]: Syntax OK
2014-02-03T12:15:03.298169+02:00 foobar systemd[1]: Reloaded apache.

Есть идеи, почему это происходит или где мне посмотреть дальше?

Apache не перезапускается (что подразумевает его выключение и повторный запуск). Вместо этого он перечитывает свой файл конфигурации.

Держу пари, что это вызвано вашим программным обеспечением logrotation.

Если ротация журналов осуществляется путем перемещения журнала на новое имя и создания нового файла со старым именем, вам необходимо перезапустить apache, чтобы он начал использовать новый файл. Поэтому при ротации журналов apache вам необходимо выполнить одно из двух:

  1. Перезагрузите конфигурацию apache (что заставит его начать использовать новый файл журнала),
  2. Не перемещайте старый файл - вместо этого скопируйте содержимое под имя файла резервной копии и очистите оригинал.