Risposte:
Controlla: http://httpd.apache.org/docs/2.2/programs/apachectl.html
apachectl configtest
Un altro modo è httpd -t
. Pertanto, è disponibile nella versione Windows di Apache. Controlla http://httpd.apache.org/docs/2.4/programs/httpd.html
apachectl configtest
ottengo Syntax OK
, ma quando corro apache2 -t
ottengo AH00526: Syntax error on line 74 of /etc/apache2/apache2.conf
(tra gli altri errori)
apachectl configtest
è la risposta corretta. Sfortunatamente ho un'installazione di Windows in cui manca Apachectl. Anche qui chiamare httpd
aiuta.
Il test di configurazione di Apache ( apachectl configtest
o i suoi equivalenti) verifica solo la sintassi valida del file di configurazione (e dei file che include ricorsivamente). Tuttavia, la domanda originale chiedeva di prevenire i tempi di fermo. Anche quando apachectl configtest
non viene restituito un errore, un riavvio effettivo potrebbe comunque non riuscire, causando tempi di inattività.
Cause comuni di tali errori includono certificati SSL mancanti o inaccessibili, directory mancanti per i file di registro o una directory radice del sito Web mancante. Spesso, tali errori sono causati dalla rimozione della directory di un vhost senza rimuovere il file di configurazione Apache vhost. Si consiglia vivamente di utilizzare uno strumento come fantoccio o ansible per evitare tali incoerenze.
Vedendo che questa domanda è il successo numero uno quando googling "apache config lint" ho pensato di menzionare questo piccolo dettaglio ...
AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1. Set the 'ServerName' directive globally to suppress this message