Как вы перезапустите Apache?

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

rcapache2 restart

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

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

241
задан 02.11.2019, 18:11

10 ответов

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

service apache2 restart

и использовать для этого все функции (Стоп - Пуск - Перезагрузка)

0
ответ дан 02.11.2019, 18:12

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

./apachectl start

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

0
ответ дан 02.11.2019, 18:12

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

sudo service apache2 status

, затем останавливаете работающую службу

sudo service apache2 stop

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

sudo /opt/lampp/lampp start

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

0
ответ дан 02.11.2019, 18:13

Ubuntu путь:

sudo service apache2 restart|stop|start 
0
ответ дан 02.11.2019, 18:14

Как сказал Мариус изящный, следует использовать либо для перезапуска:

sudo apache2ctl graceful

или

sudo apache2ctl graceful-stop

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

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

0
ответ дан 02.11.2019, 18:15
sudo /etc/init.d/apache2 restart

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

0
ответ дан 02.11.2019, 18:15
  • 1
    Я еще не понял, что Apache переехал в Upstart. – RomainValeri 02.11.2019, 18:16
  • 2
    Делая это в недавнем Ubuntu, вы получаете сообщение о том, что делаете это по-новому, хотя он все равно будет выполнять желаемую команду. – Moberg 02.11.2019, 18:16
  • 3
    Я больше не вижу этого сообщения. – tassinari 02.11.2019, 18:16

Рекомендуемый способ запуска / остановки служб в 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
0
ответ дан 02.11.2019, 18:16

sudo service apache2 restart за способ, который позаимствован у Red Hat.

0
ответ дан 02.11.2019, 18:16
  • 1
    sudo restart apache2 не работает в Ubuntu 12.04. Не уверен в других версиях Ubuntu. – mBardos 02.11.2019, 18:17
  • 2
    sudo restart apache2 не работает в Ubuntu 14.04. sudo service apache2 restart работает жестко. – Code Whisperer 02.11.2019, 18:17
  • 3
    @ saji89 тебе нужно сделать sudo service apache2 restart, тогда это будет работать. – wheresrhys 02.11.2019, 18:17
  • 4
    Я думаю, что service - это способ LSB, и он должен работать в большинстве дистрибутивов, теперь, когда Debian и Ubuntu finally получили его. – wheresrhys 02.11.2019, 18:18

если вы являетесь пользователем 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 )

0
ответ дан 02.11.2019, 18:17
  • 1
    @MikaelAuno или sudo -E -s. При отключении я предполагаю, что это означало, что вы не можете напрямую войти в систему как root, но вы все равно можете запускать процессы как root. – nobar 02.11.2019, 18:18
  • 2
    @ xav0989 Это вопрос определения. Конечно, вы не можете напрямую войти как root или войти как root любым способом, для которого требуется пароль root, но есть и другие способы стать root. Попробуйте, например, sudo -i, затем whoami, и вы увидите, что вы действительно вошли как root. Кроме того, если вы сделаете ps aux | grep root, вы увидите, что у вас уже есть много процессов в вашей системе, работающих как root. Так что, возможно, root не отключен. – Andrew C 02.11.2019, 18:18
  • 3
    Корневая учетная запись @MikaelAuno отключена, если у нее нет пароля – user4401817 02.11.2019, 18:18
  • 4
    //stop apache должен быть комментарием? если это так, стандартная запись оболочки будет #stop apache, // не работает в Bash – ashish yadav 02.11.2019, 18:19
  • 5
    root не отключен, у него просто нет пароля, если вы сами его не дадите. – nelsontruran 02.11.2019, 18:19

Хотите перезапустить Apache или изящно перезагрузить его конфигурацию?

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

sudo service apache2 reload

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

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

0
ответ дан 02.11.2019, 18:18
  • 1
    Я считаю, что преимущество restart заключается в том, что если Apache не работает, он будет запускаться . - > Будет ли перезагружать также запускать ? – marcok 02.11.2019, 18:18
  • 2
    @MikkoRantalainen: спасибо, я отредактировал ответ, чтобы удалить необработанный apache2ctl graceful, и вместо этого рекомендую просто service apache2 reload, который запускает configtest до graceful. – Louth 02.11.2019, 18:19
  • 3
    Всегда выполняйте sudo apache2ctl configtest, прежде чем делать постепенный перезапуск. Изящный перезапуск не удастся, и apache будет остановлен, если в конфигурации есть синтаксическая ошибка. – GoZoner 02.11.2019, 18:19
  • 4
    Я так не думаю - еще хуже, перезагрузка остановит работающий apache, если вы допустите синтаксическую ошибку в файле конфигурации. – GoZoner 02.11.2019, 18:19
  • 5
    Да! Использовать грациозно гораздо лучше, если вы хотите перезапустить, не запуская зрителей вашего сайта! – Kevin Suttle 02.11.2019, 18:20

Теги

Похожие вопросы