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

Как узнать, перезагружается ли Apache?

Пытаюсь перезапустить Apache и не могу сказать, перезапускается ли он - есть ли журналы для перезапуска, или если я ввожу командную строку для перезапуска, должен ли я ожидать ответа (сообщение об ошибке, подтверждение, статус и т. Д.)

Никогда не делал этого раньше и не уверен, что происходит.

Это именно то, что я печатаю, без $ / # перед ним ...

Ввод команд:

sudo apache2ctl restart

-- или --

apache2ctl restart

КОНТЕКСТ: Команды, выполняемые из корневого каталога, что означает ... "cd /"

РЕЗУЛЬТАТ: Кажется, ничего не происходит.

В зависимости от того, как Apache и syslog настроены на вашем компьютере, он может отличаться, однако при стандартной установке Debian или Ubuntu Apache 2 вы найдете журналы в /var/log/apache2/error.log. Если он перезапускается, вы должны четко увидеть это в журналах.

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

И последнее: если вы когда-нибудь пытаетесь выяснить, успешно или не удалось выполнить команду, которую вы только что запустили, попробуйте echo $?. Он напечатает код возврата последней команды. В 99% случаев 0 - это то, что вы там ищете.

Мой создает несколько записей [примечание] в error.log, когда я apache2ctl restart, начиная с «[уведомление] SIGHUP получено. Попытка перезапуска» и заканчивая «Apache (список различных модулей) настроен - возобновление нормальной работы»

apache2ctl при ошибке должен возвращать ненулевой код состояния. Вы можете быть проинформированы о сбое, введя команду запуска следующим образом:

apache2ctl start || echo 'apache2ctl failed'

Вы не должны видеть ничего, если apache2ctl считает, что это удалось.

Если вы предпочитаете что-то более конкретное (следуя принципу «доверяй, но проверяй»), вы можете проверить, действительно ли apache запущен и прослушивает соединения с netstat, например

netstat -anp | egrep -i 'http|apache'

Если вы видите строки, похожие на эту, значит, вы золотой:

tcp6   0   0  :::80   :::*  LISTEN  1506/apache2
tcp6   0   0  :::443  :::*  LISTEN  1506/apache2

Или, если вы не используете IPv6, вы увидите нечто подобное:

tcp   0   0  0.0.0.0:80   0.0.0.0:*  LISTEN  2341/apache2
tcp   0   0  0.0.0.0:443  0.0.0.0:*  LISTEN  2341/apache2

В любом случае ключевым моментом является то, что apache2 СЛУШАЕТ входящие соединения на хорошо известных портах www (80 и, возможно, 443).

Есть несколько мест, где вы можете посмотреть, если перезапустите apache. Первый системный журнал в каталоге / var / log. Второй apache регистрируется в каталоге / var / log / apache2