Я перешел с SLES на Ubuntu и теперь хочу перезапустить свой локальный сервер. В SLES я использовал:
rcapache2 restart
, но это как-то не работает в Ubuntu. : (
Как перезапустить мой Apache?
Хотите перезапустить Apache или изящно перезагрузить его конфигурацию?
Все отвечали на первый вопрос ; Вы можете сделать второе с
sudo service apache2 reload
Изящная перезагрузка происходит немного быстрее, и времени простоя нет.
Есть одно предупреждение: если ваши конфигурационные файлы apache содержат ошибку (например, настраивает файл журнала в несуществующей директории), сервер может молча завершиться, не выводя никаких сообщений об ошибках на консоль. Большинство других ошибок обнаруживается в apache2ctl configtest
, который запускается в service apache2 reload
перед выполнением фактической перезагрузки с помощью apache2ctl graceful
.
sudo /etc/init.d/apache2 restart
Конечно, вы можете заменить restart
на stop
, start
и (я думаю) reload
Рекомендуемый способ запуска / остановки служб в Ubuntu (не только Apache) - использовать команды start / stop / reload (которые действительно являются символическими ссылками на программу initctl , часть ). выскочка ).
Для служб, которые используют устаревшие сценарии /etc/init.d
, соответствующий сценарий будет вызываться с правильными параметрами; для сервисов, использующих инфраструктуру upstart, соответствующий переход события будет сообщаться демону upstart через initctl .
Итак, чтобы запустить / остановить / перезагрузить / перезапустить apache в Ubuntu, вы можете использовать:
sudo start apache2
sudo stop apache2
sudo reload apache2
sudo restart apache2
Ubuntu путь:
sudo service apache2 restart|stop|start
Как сказал Мариус изящный, следует использовать либо для перезапуска:
sudo apache2ctl graceful
или
sudo apache2ctl graceful-stop
, чтобы изящно остановить Apache.
Эти команды ждут, пока все запросы на веб-страницы не будут обработаны, прежде чем перезапустить / остановить веб-сервер, чтобы ваш пользователь не получил половину веб-страницы.
Если вы устанавливаете версию Apache 2.4 в своей системе, чтобы запустить перезапуск или остановить сервер Apache в локальной системе, вам нужно выполнить следующую команду
./apachectl start
или использовать restart , остановите также согласно вашему требованию. это проверенный код
sudo service apache2 restart
за способ, который позаимствован у Red Hat.
если вы являетесь пользователем root: (в Ubuntu root, я думаю, отключен, используйте команду sudo!)
$ /etc/init.d/apache stop
$ /etc/init.d/apache start
$ /etc/init.d/apache restart
$ /etc/init.d/apache reload
(если вы использовали a2ensite или a2dissite, вам придется перезагрузить конфигурацию apache )
Сначала вы проверяете свое состояние с помощью этой команды
sudo service apache2 status
, затем останавливаете работающую службу
sudo service apache2 stop
, а затем используете эту команду:
sudo /opt/lampp/lampp start
это решение работал для меня.
вы можете использовать службы для перезапуска Apache
service apache2 restart
и использовать для этого все функции (Стоп - Пуск - Перезагрузка)
sudo systemctl restart apache2
systemctl - Управляйте systemd администратором системы и менеджером по сервису.
systemctl может использоваться, чтобы анализировать и управлять состоянием "systemd" администратора системы и менеджера по сервису.
Лучший способ перезапустить Ваш сервер Apache при помощи следующей команды:
$ sudo service apache2 restart
Изменитесь можно использовать ниже команды:
$ sudo /etc/init.d/apache2 restart
Вы можете использовать команду systemctl
для перезапуска службы apache; это управляет системой systemd и менеджером служб.
Для перезапуска Apache с помощью команды systemctl
:
sudo systemctl restart apache2.service
В случае зависания или отсутствия ответа при перезапуске вы можете использовать команду systemctl stop
, чтобы остановить службу, а затем запустить с помощью команды systemctl start
. Команды следующие:
Для остановки Apache с systemctl
Команда:
sudo systemctl stop apache2.service
Для запуска Apache с systemctl
Команда:
sudo systemctl start apache2.service
Вы также можете использовать команду reload только для перезагрузки служба апача.
Для перезагрузки Apache с systemctl
Команда:
sudo systemctl reload apache2.service