Перезапустите Apache в Ubuntu, RedHat, Gentoo и других дистрибутивах Linux
Когда вы размещаете свой сайт на платформе с открытым исходным кодом, весьма вероятно, что эта платформа использует Apache в качестве веб-сервера по умолчанию, работающего в дистрибутиве Linux серверного уровня. Когда вы вносите существенные изменения в структуру конфигурации веб-сервера, вам нужно будет перезапустить веб-сервер (по сути, не операционную систему). Процедура перезапуска Apache зависит от операционной системы сервера.
Предпосылки
Чтобы перезапустить сервер, вам понадобится доступ оболочки к операционной системе, на которой работает Apache. Имея выделенный виртуальный частный сервер, вы можете либо войти в приглашение оболочки через браузер, либо использовать сеанс Secure Shell, инициированный с локального компьютера. Если вы не можете войти на сервер и выполнить команды с повышенными привилегиями (например, с помощью sudo ), вы не можете перезапустить сервер Apache. В этом случае вам нужно обратиться к системному администратору за помощью.
Работа с серверами в Linux
Многие дистрибутивы Linux поддерживают серию сценариев оболочки, которые управляют основными службами. Эти сценарии отвечают на несколько аргументов, которые определяют его работу:
- Старт : запускает службу
- Стоп . Завершает работу службы.
- Перезапустить . Перезапускает службу независимо от текущего использования.
- Перезагрузка . Изящно перезапускает службу, позволяя текущим соединениям продолжаться, если они могут
Если вы можете, используйте reload вместо restart , поскольку первый фактически не убивает сервер, он просто повторно инициализирует его, перечитывая текущие файлы конфигурации. Полный перезапуск отключает всех подключенных в настоящее время клиентов к серверу в дополнение к повторной инициализации файлов конфигурации.
Обычно вы перезапускаете серверную службу одним из трех способов.
Во-первых, использовать скрипт из /etc/init.d/ – типичный для серверов, на которых установлен Debian до версии 8.x или Ubuntu до 15.04. Второе – использовать команду systemctl . Третий и отказоустойчивый подход заключается в использовании apachectl .
Использование Init.d
Дистрибутивы Linux, использующие сценарии /etc/init.d/, могут использовать любую из следующих трех команд для перезапуска Apache:
# /etc/init.d/apache2 restart
$ sudo /etc/init.d/apache2 restart
$ sudo service apache2 restart
Чтобы выполнить постепенный перезапуск, замените restart на reload.
Для серверов CentOS и RHEL 6.x или более ранних версий используйте сценарий service , но вместо того, чтобы называть его apache2 , вместо этого вы будете называть его httpd . :
перезапуск службы httpd
Использование Systemctl
Более новые операционные системы, такие как Debian 8.x, Ubuntu 15.04, CentOS/RHEL 7.x и более новые версии, используют systemd. Выполните следующую команду:
# systemctl restart apache2.service
Использование Apachectl
Сценарий apachectl предлагает общий подход, который направлен на то, чтобы не зависеть от распределения вашего конкретного сервера. Чтобы выполнить его, вы должны запустить его как пользователь root:
# apachectl -k restart
#apachectl -k graceful
Метод graceful аналогичен методу reload .