Jeśli dokonałeś zmian w pliku konfiguracyjnym Apache httpd.conf lub w jednym z innych dołączonych plików konfiguracyjnych takich jak pliki vhosts.d, musisz ponownie załadować usługę Apache, aby zmiany odniosły skutek. Z wiersza poleceń robisz to za pomocą polecenia apachectl. Dokładne położenie tego polecenia różni się w zależności od używanego wariantu systemu Unix lub Linux (np. Fedora, OSX, FreeBSD, Slackware, Mandrake, SUSE) i ustawień czasu kompilacji, ale zazwyczaj jest dostępne w / usr / sbin / apachectl
Wdzięczne ponowne uruchamianie Apache
Przykład prawidłowego ponownego uruchomienia Apache przedstawiono poniżej:
/usr/sbin/apachectl graceful
Pamiętaj, że aby uruchomić to polecenie, musisz albo działać jako root, albo użyć polecenia„ sudo ” .
Jeśli Apache nie jest jeszcze uruchomiony, zostanie uruchomiony. Jeśli już działa, załaduje się ponownie z nowymi zmianami, ale nie przerwie aktywnych połączeń, co oznacza, że każdy, kto jest w trakcie pobierania czegoś, będzie mógł to pobrać.
Uruchamianie konfiguracji najpierw przetestuj
Przed ponownym uruchomieniem usługi Apache zostanie sprawdzone pliki konfiguracyjne, aby upewnić się, że są one prawidłowe. Jeśli wystąpi w nich błąd, zostanie wyświetlony błąd, a usługa Apache będzie nadal działać przy użyciu starych ustawień. Przed ponownym uruchomieniem musisz poprawić swoje ustawienia.
Możesz także sprawdzić ustawienia bez ponownego uruchamiania Apache w następujący sposób:
/usr/sbin/apachectl configtest
Spowoduje to sprawdzenie pliku httpd.conf i zgłosi, czy składnia pliku jest ważne czy nie. Zostanie wyświetlona lista błędów wraz z numerami linii, jeśli takie istnieją. Ułatwia to wyodrębnienie wszelkich problemów.
Dostępne opcje polecenia apachectl
Poniżej przedstawiono wszystkie dostępne opcje, które można przekazać do polecenia apachectl. Ten tekst pochodzi ze strony man apachectl.
apachectl start: Uruchom demona Apache. Wyświetla błąd, jeśli jest już uruchomiony.
apachectl stop: zatrzymuje demona Apache.
apachectl restart: Ponownie uruchamia demona Apache, wysyłając mu SIGHUP. Jeśli demon nie jest uruchomiony, jest uruchamiany. To polecenie automatycznie sprawdza pliki konfiguracyjne za pomocą configtest przed zainicjowaniem ponownego uruchomienia, aby upewnić się, że Apache nie umarł.
fullstatus: Wyświetla pełny raport stanu z mod_status. Aby to zadziałało, musisz mieć włączony mod_status na swoim serwerze i przeglądarkę tekstową, taką jak lynx, dostępną w twoim systemie. Adres URL używany do uzyskiwania dostępu do raportu o stanie można ustawić, edytując zmienną STATUSURL w skrypcie.
status apachectl: Wyświetla krótki raport o stanie. Podobna do opcji fullstatus, z tą różnicą, że lista aktualnie obsługiwanych żądań jest pomijana.
apachectl graceful: Wdzięcznie restartuje demona Apache, wysyłając mu SIGUSR1. Jeśli demon nie jest uruchomiony, jest uruchamiany. Różni się to od normalnego restartu tym, że aktualnie otwarte połączenia nie są przerywane. Efektem ubocznym jest to, że stare pliki dziennika nie zostaną natychmiast zamknięte. Oznacza to, że jeśli jest używany w skrypcie rotacji dzienników, może być konieczne znaczne opóźnienie, aby zapewnić zamknięcie starych plików dziennika przed ich przetworzeniem. To polecenie automatycznie sprawdza pliki konfiguracyjne za pomocą configtest przed rozpoczęciem ponownego uruchomienia, aby upewnić się, że Apache nie umarł.
apachectl configtest: Uruchom test składni pliku konfiguracyjnego. Analizuje pliki konfiguracyjne i albo raportuje Składnia OK, albo szczegółowe informacje o konkretnym błędzie składniowym.
Pomoc apachectl: Wyświetla krótką wiadomość pomocy .
Aktualizacja, 19 marca 2007
Ten artykuł napisałem pierwotnie dla Apache 1.3 i kiedy używałem Gentoo Linux i OSX do obsługi stron z Apache. Na moich obecnych maszynach openSUSE, na których działa Apache 2.2, nie ma już programu apachectl. Zamiast powyższego polecenia możesz uruchomić następujące bardzo podobne polecenie i opcje:
/etc/init.d/apache2 start|stop|reload|restart|configtest
Uruchamianie /etc/init.d/apache2
on własne wyświetla komunikat pomocy, aby wyszczególnić różne opcje wymienione poniżej:
start – start httpd
startssl – start httpd od -DSSL
stop – zatrzymaj httpd (wyślij znak SIGTERM do rodzica)
try-restart – zatrzymaj httpd i jeśli to się powiedzie (tj. jeśli działało wcześniej), uruchom to znowu.
status – sprawdź, czy httpd działa
restart – zatrzymaj httpd, jeśli jest uruchomiony; start httpd
reload | graceful – wykonaj wdzięczny restart, wysyłając SIGUSR1 lub uruchom, jeśli nie jest uruchomiony
configtest – wykonaj test składni konfiguracji
extreme-configtest – spróbuj uruchomić httpd jako nikt (wykrywa więcej błędów poprzez ładowanie konfiguracji, ale nie może odczytać certyfikatów SSL)
sonda – sonda dla konieczność przeładowania, podaj argument wymagany do przeładowania. (porównując pliki conf z sygnaturą czasową pliku pid)
full-server-status – zrzuca pełny ekran statusu; wymaga lynx lub w3m i włączonego mod_status
status-serwera – zrzuć krótki ekran statusu; wymaga lynx lub w3m i włączonego mod_status
pomoc – ten ekran