Ubuntu Apache2 DefaultRuntimeDir debe ser un directorio válido, absoluto o relativo a ServerRoot

Ubuntu Apache2 DefaultRuntimeDir debe ser un directorio válido, absoluto o relativo a ServerRoot

Tengo un servidor web que ejecuta Ubuntu 17.04 y estoy intentando configurarlo Apache. Todo funcionó muy bien hasta que decidí alojar dos sitios web en una sola máquina a través de virtualHosts. Ahora apachese niega a iniciarse incluso con un solo host habilitado. Cada vez que intento iniciar Apacheme sale este error:

apache2: Syntax error on line 80 of /etc/apache2/apache2.conf:
DefaultRuntimeDir must be a valid directory, absolute or relative to ServerRoot.

Ninguno de mis intentos de solucionar este problema ha llegado a nada, incluido:

apt purge apache2 && rm -r /etc/apache2 

Todo lo que me dice la línea 80 del mensaje de error es DefaultRuntimeDir ${APACHE_RUN_DIR}.

Y en ningún momento veo dónde ni qué APACHE_RUN_DIRse declara como.

¿Alguien me puede ayudar?

Respuesta1

El comando

source /etc/apache2/envvars

solucioné mi problema (después de probar TODOS los demás).

Para comprobar si todo está bien o no utilice el comando

apache2 -S

Descubrí que era más rápido que usar mis registros DNS.

Respuesta2

Falta una actualización en "man apache2", al menos para la opción -V;

Hoy en día, se debería utilizar "apachectl" o "apache2ctl" en lugar de

"apache2" para al menos algunas opciones, como se indica en

https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=879571

Respuesta3

Apache2 utiliza /etc/apache2/envvarspara establecer variables de entorno. Puede utilizar esta información para asegurarse de que el directorio ${APACHE_RUN_DIR}al que apunta sea válido.

Estaba experimentando el mismo problema al actualizar de 14.04 a 17.04. El problema fue: ${APACHE_RUN_DIR}estaba configurado en /var/run/apache2, pero faltaba la carpeta apache2 en /var/run.

La solución para mí fue:mkdir /var/run/apache2

Respuesta4

en mi caso se trataba de la línea "Requerir todo denegado" en el archivo apache2.conf que (nuevamente) en mi caso se escribió simplemente como "Requerir denegado"

información relacionada