Apache ne peut pas être démarré-ServerRoot doit être un répertoire valide et incapable de trouver le module spécifié
j'utilise le serveur portable xampp et J'ai quelques problèmes avec le serveur http Apache, il dit "ServerRoot doit être un répertoire valide"
sortie en ligne de commande:
Please close this command only for Shutdown
Apache 2 is starting ...
httpd.exe: Syntax error on line 35 of K:/../../../xampp/apache/conf/httpd.conf: ServerRoot must be a valid directory
Apache could not be started
j'ai vérifié la ligne 35 de xampp/apache/conf/httpd.conf et il était:
ServerRoot "/xampp/apache"
Qui n'existe pas. Mes dossiers sont:
K:/../../../xampp/apache/conf <- where the httpd.conf is
K:/../../../xampp/apache/ <- the server root
K:/../../../xampp/apache/modules <- where server modules are
si je change (à la ligne 35) en
ServerRoot ".."
It dit:
Please close this command only for Shutdown
Apache 2 is starting ...
httpd.exe: Syntax error on line 65 of K:/../../../xampp/apache/conf/httpd.conf: Cannot load modules/mod_access_compat.so into server: Unable to find the specified module
Apache could not be started
j'ai vérifié, et modules/mod_access_compat.donc existe, donc je ne peux pas trouver comment le réparer.
toute aide sera appréciée
11 réponses
Lancez setup_xampp.bat de shell et les chemins devraient être définis automatiquement pour la version portable de XAMPP pour windows. Il a travaillé pour moi.
naviguez vers httpd.fichier conf dans conf direcotry dans Apache24 ou n'importe quel fichier apache que vous avez.
Aller à la racine du serveur= ".."la ligne et de modifier la valeur du chemin d'accès où apache est situé comme "C:\Program Files\Apache24"
si vous ouvrez un éditeur et sautez à la ligne exacte montrée dans le message d'erreur (dans le fichier httpd.conf
), c'est ce que vous verriez:
#LoadModule access_compat_module modules/mod_access_compat.so
LoadModule actions_module modules/mod_actions.so
LoadModule alias_module modules/mod_alias.so
LoadModule allowmethods_module modules/mod_allowmethods.so
LoadModule asis_module modules/mod_asis.so
LoadModule auth_basic_module modules/mod_auth_basic.so
#LoadModule auth_digest_module modules/mod_auth_digest.so
#LoadModule auth_form_module modules/mod_auth_form.so
les trajectoires vers les modules, p.ex. modules/mod_actions.so
, sont toutes indiquées relativement, et elles sont par rapport à la valeur fixée par ServerRoot
. ServerRoot
est défini au haut de httpd.conf
(ctrl-F pour ServerRoot "
).
ServerRoot est habituellement mis absolument, qui serait K:/../../../xampp/apache/
à votre poste.
mais il peut aussi être défini relativement, relatif à l'Annuaire de travail ( cf. ). Si le répertoire de travail est le dossier Apache bin
, alors utilisez cette ligne dans votre httpd.conf
:
ServerRoot ../
si le répertoire de travail est le dossier Apache, alors cela suffira:
ServerRoot .
si le répertoire de travail est le dossier C: (Un dossier au-dessus du dossier Apache), alors utilisez ceci:
ServerRoot Apache
pour les services apache, le répertoire de travail serait C:\Windows\System32
, alors utilisez ceci:
ServerRoot ../../Apache
je pense que ServerRoot doit être absolu. Utilisez quelque chose comme"/apache / docroot "
si vous utilisez une version actuelle il y a un "setup_xampp.bat/.sh" script dans le répertoire racine. Le chemin doit être absolu, mais le script change tous les chemins nécessaires à votre position actuelle.
utilisez la lettre de commande avec des slashs vers l'avant pour commencer (c:/apache/...).
- naviguez vers votre XAMPP répertoire, vous trouverez un dossier appelé apache , ouvrez-le, puis copiez son chemin, mon chemin est " D:\Hacking outils 2\Programs\XAMPP V2\apache
- Ouvrir apache\conf\httpd.conf avec n'importe quel éditeur de texte
- Faites défiler jusqu'à la ligne 30-40
- vous trouverez un code comme ceci:
ServerRoot "xampp\apache"
- maintenant, changez-le pour être le répertoire apache, comme je l'ai dit dans Step #1 , mon chemin est D:\Hacking outils 2\Programs\XAMPP V2\apache ", donc, mon code sera
ServerRoot "D:\Hacking Tools 2\Programs\XAMPP V2\apache"
- il devrait ressembler à ceci:
ServerRoot "D:\XAMPP\apache"
- maintenant revenir à la XAMPP répertoire principal et exécuter xampp_start.exe
cela a fonctionné pour moi, si cela ne fonctionne pas pour vous, il suffit de commenter avec la valeur d'erreur après l'ouverture du xampp_start.exe
Exécuter "setup_xampp.bat/.sh" et puis Supprimer "\" à la fin, de sorte que votre ServerRoot devrait être comme "C.:....\apache" NON "C.:....\apache\ "
assurez-vous de votre ServerRoot
dans httpd.conf indique correctement le chemin Apache. Sinon, vous verrez ce message pour chaque module.
Modifier le chemin d'accès ci-dessous dans httpd.fichier conf de votre installation. Cela permettra de résoudre le problème.
Define SRVROOT "C:\Apache24"
ServerRoot "${SRVROOT}"
j'ai vérifié la ligne 35 de xampp/apache/conf/httpd.conf et il était:
ServerRoot "/ xampp / apache"
Qui n'existe pas. ...
créez le répertoire, ou changez le chemin d'accès au répertoire qui contient vos documents hypertextes.