Вопрос: Как перезапустить Apache?


Я переключился с SLES на Ubuntu, и теперь я хочу перезапустить локальный сервер. В SLES я использовал:

rcapache2 restart

но это как-то не работает в Ubuntu. :(

Как перезапустить мой Apache?


222
2017-10-12 10:26


Источник




Ответы:


Или sudo service apache2 restart за то, что заимствовано у Red Hat, Or sudo restart apache2 для нового блестящего способа Upstart.


315
2017-10-12 10:51



я думаю service является способом LSB и должен работать в большинстве дистрибутивов, теперь, когда Debian и Ubuntu в конце концов понял. - Marius Gedminas
sudo restart apache2 не работает в Ubuntu 12.04, Не уверен в других версиях Ubuntu. - saji89
@ saji89 вам нужно сделать sudo service apache2 restart, то это сработает. - Kevdog777
sudo restart apache2 не работает в Ubuntu 14.04. sudo service apache2 restart работает жестко. - toesslab.ch


хотите ли вы перезапуск Apache, или вы хотите изящно перезаряжать его конфигурации?

Все отвечали на первый вопрос; вы можете сделать второй с

sudo service apache2 reload

Изящная перезагрузка немного быстрее, и нет простоев.

Существует одно предостережение: если ваши конфигурационные файлы apache содержат ошибку (например, конфигурирует файл журнала в каталоге, который не существует), сервер может тихо выйти без печати сообщений об ошибках на консоль. Большинство других ошибок apache2ctl configtest что service apache2 reload выполняется перед выполнением фактической перезагрузки с помощью apache2ctl graceful,


96
2017-10-12 13:09



Да! Использовать грациозную намного лучше, если вы хотите перезапустить, не отрывая своих зрителей на веб-сайте! - tommed
Я считаю, что это преимущество перезапуск что если Apache не будет запущен, он будет Начало, -> Будет ли перезагружать также Начало Это? - Torben Gundtofte-Bruun
Я не думаю, что так - еще хуже, перезагрузка остановит работу apache, если вы сделаете синтаксическую ошибку в файле конфигурации. - Marius Gedminas
Всегда запускать sudo apache2ctl configtest перед тем, как сделать изящный перезапуск. Изящный перезапуск завершится неудачно, и apache будет остановлен, если config имеет синтаксическую ошибку. - Mikko Rantalainen
@MikkoRantalainen: спасибо, я отредактировал ответ, чтобы сбросить сырье apache2ctl graceful и вместо этого service apache2 reload, который запускает configtest до graceful, - Marius Gedminas


Рекомендуемый способ Ubuntu для запуска / остановки служб (не только Apache) заключается в использовании команд start / stop / reload (которые действительно являются символические ссылки на initctl программы, часть выскочка).

Для служб, которые используют наследие /etc/init.d скриптов, соответствующий сценарий будет вызываться с правильными параметрами; для услуги, которые используют инфраструктуру выскочки, соответствующее событие переход будет сигнализирован выскочка демон через initctl,

Итак, чтобы запустить / остановить / перезагрузить / перезапустить apache на Ubuntu, вы можете использовать:

sudo start apache2
sudo stop apache2
sudo reload apache2
sudo restart apache2

26
2017-10-12 10:55





sudo /etc/init.d/apache2 restart

Конечно, вы можете поменять местами restart для stop, start и я думаю) reload


20
2017-10-12 10:30



Когда вы делаете это под недавним Ubuntu, вы получаете сообщение о том, чтобы сделать это по-новому, хотя он все равно выполнит вашу желаемую команду. - jfmessier
Я не понял, что Apache уже перешел на Upstart. - Oli♦
Я больше этого не вижу. - Tim


Способ Ubuntu:

sudo service apache2 restart|stop|start 

17
2018-03-06 15:06



Это сработало! - Hos Mercury


Поскольку Мариус сказал, что изящное должно использоваться либо для перезапуска:

sudo apache2ctl graceful

или

sudo apache2ctl graceful-stop

чтобы изящно остановить Apache.

Эти команды ждут, пока все запросы на веб-страницы будут обслуживаться до перезапуска / остановки веб-сервера, чтобы ваш пользователь не получал половину веб-страницы.


10
2017-10-12 14:38





Сначала вы проверяете свой статус, используя эту команду

sudo service apache2 status

затем прекратить работу службы

sudo service apache2 stop

затем используйте эту команду:

sudo /opt/lampp/lampp start

это решение сработало для меня.


3
2018-06-09 17:10





если вы устанавливаете версию Apache 2.4 в своей системе, чтобы начать перезапуск или остановить ваш сервер Apache в локальной системе, вы должны выполнить следующую команду

./apachectl start

или вы можете использовать перезапуск, стоп также согласно вашему требованию. это проверенный код


2
2017-09-01 11:20





вы можете использовать службы для перезапуска Apache

service apache2 restart

и вы можете использовать для него все функциональные возможности (Stop - Start - Reload)


1
2018-05-31 23:14