J'ai un serveur Web exécutant Ubuntu 17.04 avec lequel j'essaie de configurer Apache
. Tout s'est très bien passé jusqu'à ce que je décide d'héberger deux sites Web sur une seule machine via virtualHosts. Refuse maintenant apache
de démarrer même avec un seul hôte activé. Chaque fois que j'essaie de démarrer, Apache
j'obtiens cette erreur:
apache2: Syntax error on line 80 of /etc/apache2/apache2.conf:
DefaultRuntimeDir must be a valid directory, absolute or relative to ServerRoot.
Aucune de mes tentatives pour résoudre ce problème n'a abouti à quoi que ce soit, y compris:
apt purge apache2 && rm -r /etc/apache2
Toute la ligne 80 du message d'erreur me dit que c'est DefaultRuntimeDir ${APACHE_RUN_DIR}
.
Et à aucun moment je ne vois où ni ce qui APACHE_RUN_DIR
est déclaré.
Est-ce que quelqu'un peut m'aider?
source /etc/apache2/envvars
mais après cela, mon répertoire personnel est passé de~
àhome
et quand j'ai écrit un cd, il l'a montré-bash: cd: HOME not set
. Lorsque je suis entré dans les envvars, l'une des premières lignes est# this won't be correct after changing uid
etunset HOME
. Une idée de comment résoudre ce problème?Il y a une mise à jour manquante dans "man apache2", au moins pour l'option -V;
Aujourd'hui, on devrait utiliser "apachectl" ou "apache2ctl" au lieu de
"apache2" pour au moins certaines options, comme indiqué dans
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=879571
la source
Apache2 utilise
/etc/apache2/envvars
pour définir les variables d'environnement. Vous pouvez utiliser ces informations pour vous assurer que le répertoire${APACHE_RUN_DIR}
pointe vers est valide.Je rencontrais le même problème lors de la mise à niveau du 14.04 au 17.04. Le problème était: a
${APACHE_RUN_DIR}
été défini sur/var/run/apache2
, mais le dossier apache2 manquait dans/var/run
.La solution pour moi était:
mkdir /var/run/apache2
la source
source /etc/apache2/envvars
dans mon cas, il s'agissait de la ligne "Exiger tout refusé" dans le fichier apache2.conf qui (encore une fois) dans mon cas a été tapée comme "Exiger refusé"
la source
Le
php5.6
module Reachebling apache permet de résoudre ce problème.Appuyez sur Ctrl+ Alt+ Tet saisissez-les:
Redémarrez ensuite le service apache2:
la source