Что делать, если вы веб-сервер зависает и не отдает запрашиваемый контент?

В данной заметке будет описаны основные методы для перезагрузки веб-сервера Apache2

Причиной написания такой заметки явилось то, что иногда возникают ситуации, когда невозможно получить доступ к сайту, хотя сервер отвечает на icmp и в процессах также есть httpd/apache2

Вот как это исправить.

Краткая версия:

1. Войти в качестве root;

2. Выполнить apache2ctl graceful;

3. Если не сработал пункт №2, тогда необходимо выполнить apache2ctl stop;

4. ps -ef | grep http;

5. И запуск сервера apache2 — apache2ctl start

 

Длинная версия:

1. Войти и получить доступ в качестве пользователя root;

2. Необходимо ввести apache2ctl graceful и нажать Enter. Данная команда перезапустить веб-сервер более безопасно без потери существующих http-сессий от клиентов;

3. Теперь можно попробовать зайти на сайт. Если сервер Apache залочен, тогда команда apache2ctl graceful не даст никакого эффекта. Следует обождать минуту или две и еще раз попробовать зайти на сайт;

4. Если команда apache2ctl graceful не помогла в решении проблемы, тогда необходимо грубым методом перезапуска сервера. Перезагрузка таким методом повышает риск недоступности веб-сервера по http в течении некоторого времени;

5. Необходимо ввести команду apache2ctl stop и нажать Enter. Данная команда отключит веб-сервер;

6. Ввести ps -ef |grep http и нажать Enter. Вывод при этом должен быть пуст, что означает, что веб-сервер в данный момент времени не работает;

7. Теперь необходимо ввести команду apache2ctl start, что запустит веб-сервер в работу;

8. После этого веб-сервер сможет отдать необходимый контент.