Jak dodać wirtualne hosty bez konieczności restartowania apache?

15

Kiedy czytam samouczek na temat tworzenia / dodawania wirtualnych hostów, ostatnie zdanie zawsze brzmi:

... teraz uruchom ponownie apache i gotowe!

Teraz wielu (większość | wszystkich) hostów ma panel, który pozwala ci tworzyć nowe wirtualne hosty, które są aktywowane prawie natychmiast ... i jestem pewien, że nie uruchomili ponownie apache (niewygodne setki innych użytkowników) tylko dla mojej przyjemności !

Jak więc zmienić ustawienia apache / dodać wirtualne hosty itp. I ponownie załadować nowe ustawienia bez faktycznego restartowania serwera apache?

sierpień
źródło

Odpowiedzi:

20
$ /etc/init.d/httpd reload

Spowoduje to uruchomienie sprawdzania składni konfiguracji, a następnie przeładowanie plików konfiguracyjnych przez apache bez przerywania ruchu.

EEAA
źródło
Fajnie! Dowiedziałem się o opcjach start | stop | restart, ale nie o przeładowaniu. Dzięki.
Augustin
1
Niektóre zmiany wymagają force-reloadraczej niż reload.
inkaphink
2
i upewnij się, że wykonałeś: usługa httpd configtest przed ponownym załadowaniem - nie otrzyma wszystkich błędów konfiguracji, ale trochę złapie.
Jason Tan
2
@Jason, przynajmniej na Debianie / Ubuntu, powyższe polecenie uruchamia test konfiguracji (i upewnia się, że kończy się poprawnie) przed wydaniem apache2ctl graceful.
EEAA
10

Większość dystrybucji Linuksa ma małe narzędzie o nazwie apachectl lub apache2ctl, którego można użyć do ponownego załadowania konfiguracji. Spowoduje to również aktywację nowych wirtualnych hostów. Polecenie, którego szukasz, to apache2ctl graceful

wolfgangsz
źródło
Dzięki. Na pewno je sprawdzę. Jak to wygląda w porównaniu do innych rozwiązań: <code> $ /etc/init.d/httpd Odśwież </ code>
Augustin
3
@augustin: skrypt inicjujący jest dookoła apache2ctl. Wolałbym użyć skryptu inicjującego, ponieważ może on również uruchamiać apache2 jako konkretnego użytkownika, którego musisz znać, aby z niego korzystać apache2ctl. Zaufaj narzędziom dostarczanym z Twoją dystrybucją :-)
ℝaphink