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

24
demandé sur Roman C 2013-01-27 19:13:10

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.

42
répondu Bostjan 2014-05-15 08:54:48

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"

16
répondu Guru 2015-05-07 08:19:39

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
4
répondu Pacerier 2017-09-12 05:58:23

je pense que ServerRoot doit être absolu. Utilisez quelque chose comme"/apache / docroot "

1
répondu souser 2013-01-27 18:29:46

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.

1
répondu 0x126 2013-07-26 08:24:08

utilisez la lettre de commande avec des slashs vers l'avant pour commencer (c:/apache/...).

1
répondu hcupro 2013-08-29 15:26:43
  1. 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
  2. Ouvrir apache\conf\httpd.conf avec n'importe quel éditeur de texte
  3. Faites défiler jusqu'à la ligne 30-40
  4. vous trouverez un code comme ceci: ServerRoot "xampp\apache"
  5. 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"
  6. il devrait ressembler à ceci: ServerRoot "D:\XAMPP\apache"
  7. 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

1
répondu Xeiad Ahmid Whd Amerr 2016-05-02 13:30:46

Exécuter "setup_xampp.bat/.sh" et puis Supprimer "\" à la fin, de sorte que votre ServerRoot devrait être comme "C.:....\apache" NON "C.:....\apache\ "

1
répondu gusanare 2016-05-20 05:22:42

assurez-vous de votre ServerRoot dans httpd.conf indique correctement le chemin Apache. Sinon, vous verrez ce message pour chaque module.

1
répondu Greg Woz 2017-03-20 11:28:12

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}"
1
répondu Dhiraj Surve 2018-04-09 19:37:09

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.

0
répondu LeeGee 2018-01-03 11:50:42