Réponses:
Vérifiez: http://httpd.apache.org/docs/2.2/programs/apachectl.html
apachectl configtest
Une autre façon est httpd -t
. Par conséquent, il est disponible dans la version Windows d'Apache. Vérifiez http://httpd.apache.org/docs/2.4/programs/httpd.html
apachectl configtest
je reçois Syntax OK
, mais quand je cours, apache2 -t
je reçois AH00526: Syntax error on line 74 of /etc/apache2/apache2.conf
(entre autres erreurs)
apachectl configtest
est la bonne réponse. Malheureusement, j'ai une installation Windows où Apachectl est manquant. Ici, appeler httpd
aide aussi.
Le test de configuration d'Apache ( apachectl configtest
ou ses équivalents) teste uniquement le fichier de configuration (et les fichiers qu'il inclut de manière récursive) pour vérifier sa syntaxe. Cependant, la question initiale demandait d'éviter les temps d'arrêt. Même si apachectl configtest
aucune erreur n’est renvoyée, un redémarrage réel peut échouer, entraînant un temps mort.
Les causes courantes de ces échecs incluent des certificats SSL manquants ou inaccessibles, des répertoires manquants pour les fichiers journaux ou un répertoire racine de site Web manquant. Souvent, de telles erreurs sont causées par la suppression du répertoire d'un hôte virtuel sans supprimer le fichier de configuration Apache de l'hôte. Il est fortement recommandé d’utiliser un outil comme marionnette ou ansible pour éviter de telles incohérences.
Voyant que cette question est le hit numéro un en googlant "Apache Config Lint", j'ai pensé mentionner ce petit détail ...
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