Pokud jste provedli změny v konfiguračním souboru Apache httpd.conf nebo v jednom z dalších zahrnutých konfiguračních souborů aby se změny projevily, například soubory vhosts.d, je třeba znovu načíst službu Apache. Z příkazového řádku to uděláte pomocí příkazu apachectl. Přesné umístění tohoto příkazu se liší u varianty Unix nebo Linux, kterou používáte (např. Fedora, OSX, FreeBSD, Slackware, Mandrake, SUSE) a nastavení času kompilace, ale obvykle je přístupný na / usr / sbin / apachectl
Bezproblémové restartování Apache
Příklad elegantního restartování Apache je uveden níže:
/usr/sbin/apachectl graceful
Všimněte si, že pro spuštění tohoto příkazu budete muset buď běžet jako root, nebo použít příkaz“ sudo “ .
Pokud Apache ještě není spuštěn, bude spuštěn. Pokud již běží, znovu se načte s novými změnami, ale nepřeruší aktivní připojení, což znamená, že každý, kdo je uprostřed stahování něčeho, si to bude moci i nadále stáhnout.
Spuštění konfigurace nejprve otestujte
Před restartováním služby Apache bude provedena kontrola konfiguračních souborů, aby se zjistilo, zda jsou platné. Pokud se v nich vyskytne chyba, zobrazí se chyba a služba Apache bude pokračovat v provozu se starým nastavením. Než se pokusíte znovu restartovat, musíte opravit svá nastavení.
Můžete také zkontrolovat nastavení bez restartování Apache takto:
/usr/sbin/apachectl configtest
Tím se zkontroluje soubor httpd.conf a ohlásí se, zda je jeho syntaxe platné nebo ne. Zobrazí se seznam chyb, včetně čísel řádků, pokud existují. Díky tomu lze snadno izolovat jakékoli problémy.
Dostupné možnosti příkazu apachectl
Níže jsou uvedeny všechny dostupné možnosti, které lze předat příkazu apachectl. Tento text pochází z manuálové stránky apachectl.
start apachectl: Spusťte démona Apache. Dojde k chybě, pokud je již spuštěna.
apachectl stop: Zastaví démona Apache.
restart apachectl: Restartuje démona Apache odesláním SIGHUP. Pokud démon neběží, je spuštěn. Tento příkaz před zahájením restartu automaticky zkontroluje konfigurační soubory pomocí configtestu, aby se ujistil, že Apache nezemře.
fullstatus: Zobrazí úplnou zprávu o stavu z mod_status. Aby to fungovalo, musíte mít na serveru povolen mod_status a ve vašem systému k dispozici textový prohlížeč, například lynx. URL použitou pro přístup ke zprávě o stavu lze nastavit úpravou proměnné STATUSURL ve skriptu.
apachectl status: Zobrazí krátkou zprávu o stavu. Podobně jako volba fullstatus, kromě toho, že je vynechán seznam aktuálně obsluhovaných požadavků.
apachectl graceful: Ladně restartuje démona Apache odesláním SIGUSR1. Pokud démon neběží, je spuštěn. To se liší od běžného restartu v tom, že aktuálně otevřená připojení nejsou přerušena. Vedlejším efektem je, že staré soubory protokolu nebudou okamžitě uzavřeny. To znamená, že pokud se použije ve skriptu rotace protokolu, může být nutné značné zpoždění, aby se zajistilo, že staré soubory protokolu budou před zpracováním uzavřeny. Tento příkaz automaticky zkontroluje konfigurační soubory pomocí configtestu před zahájením restartu, aby se ujistil, že Apache nezemře.
apachectl configtest: Spustit test syntaxe konfiguračního souboru. Analyzuje konfigurační soubory a buď hlásí Syntax Ok, nebo podrobné informace o konkrétní syntaktické chybě.
apachectl help: Zobrazí krátkou nápovědu .
Aktualizace 19. března 2007
Tento článek jsem napsal původně pro Apache 1.3 a když jsem používal Gentoo Linux a OSX k poskytování stránek s Apache. Na mých současných strojích openSUSE, na kterých běží Apache 2.2, již neexistuje program apachectl. Místo výše uvedeného příkazu můžete místo toho spustit následující velmi podobný příkaz a možnosti:
/etc/init.d/apache2 start|stop|reload|restart|configtest
Spuštění /etc/init.d/apache2
na vlastní výstupy zprávy nápovědy k podrobnému popisu různých možností, jak jsou uvedeny níže:
start – start httpd
startssl – start httpd s -DSSL
stop – zastavit httpd (odeslat SIGTERM rodiči)
try-restart – zastavit httpd a pokud se to podaří (tj. pokud to běželo dříve), start to znovu.
status – zkontrolujte, zda běží httpd
restart – zastavte httpd, pokud běží; start httpd
reload | graceful – proveďte půvabný restart odesláním SIGUSR1 nebo začněte, pokud není spuštěn
configtest – proveďte test syntaxe konfigurace
extreme-configtest – zkuste spustit httpd jako nikdo (detekuje více chyb skutečným načtením konfigurace, ale nemůže číst SSL certifikáty)
sonda – sonda pro nutnost opětovného načtení, uveďte argument, který je pro opětovné načtení vyžadován. (porovnáním konfiguračních souborů s časovým razítkem pidfile)
full-server-status – vypíše celou stavovou obrazovku; vyžaduje lynx nebo w3m a povolen mod_status
stav serveru – vypíše krátkou stavovou obrazovku; vyžaduje lynx nebo w3m a povolen mod_status
nápověda – tato obrazovka