Apache no puede reiniciar

71

Intentando reiniciar apache desde la terminal usando el siguiente comando:

 sudo service apache2 restart

al ejecutar ese comando obteniendo el siguiente error:

Job for apache2.service failed. See "systemctl status apache2.service" and "journalctl -xe" for details.

Al excitar "systemctl status apache2.service" obtuvo un resultado inferior

apache2.service - (null)
   Loaded: loaded (/etc/init.d/apache2)
   Active: failed (Result: exit-code) since Sat 2015-05-30 02:22:41 IST; 12s ago
     Docs: man:systemd-sysv-generator(8)
  Process: 4866 ExecStart=/etc/init.d/apache2 start (code=exited, status=1/FAILURE)

apache error.log

AH00489: Apache/2.4.12 (Unix) configured -- resuming normal operations
AH00094: Command line: '/usr/local/apache2/bin/httpd'
Gautam Savaliya
fuente
66
después de ejecutar el reinicio de apache2 y obtener ese error, ejecute sudo journalctl -xeeso le dará una mejor idea de lo que sucedió. si aún tiene problemas para entenderlo. Publica los resultados aquí.
grag42
Okay. Eso tampoco me ayudó. Qué hay en los archivos de registro de apache. /var/log/apache2/error.log
grag42
@ grag42 gracias por su sugerencia, ejecuté sudo journalctl -xe y encontré que había un problema con la regla de reescritura y lo arreglé y ahora se está ejecutando.
Gautam Savaliya
44
Posible duplicado de Apache que no comienza
rancho
3
@rancho: ¿Qué te lleva a creer que la pregunta es un duplicado? La pregunta vinculada contiene un mensaje de error bastante específico que no tenemos aquí. Las posibles causas del problema de OP son bastante poco claras en este momento.
David Foerster

Respuestas:

61

Quizás esto ayude a encontrar la causa:

journalctl | tail

En mi caso fue un error en el archivo de configuración:

AH00526: Syntax error on line 5 of /etc/apache2/sites-enabled/mydomain-wsf.lan.conf
Arek
fuente
66
No journal files were found.
Stevie G
55
@StevieG, pruebasudo journalctl | tail
Dherik
1
¿Qué hiciste para arreglar la cosa?
Léo Léopold Hertz 준영
en mi caso, también cometí un error en el archivo apache2.config
alamin
Gracias. Escribí mal mi directorio para mi sitio recién agregado conf.
Lynnell Emmanuel Neri
48

Hay algún error de sintaxis en el archivo apache2.conf.

En una terminal, escriba:

cd /etc/apache2

Entonces:

apache2ctl configtest

Le mostrará dónde está el error en el apache2.confarchivo para corregir.

rancho
fuente
1
gran enfoque tnx, me ahorró tiempo
George Garchagudashvili
1
Esto es fantástico.
abalter
1
Gracias. Hubo un problema con Redmine y la opción PassengerResolveSymlinksInDocumentRoot.
Vadim
lol, después de ejecutar: apache2ctl configtesttengo la sintaxis ok, pero cuando ejecuto apache2 --helptengo apache2: Syntax error on line 82 of /etc/apache2/apache2.conf: DefaultRuntimeDir must be a valid directory, absolute or relative to ServerRoot y no hay errores en apache error.log!
Vladimir Ch
después de ver de cerca al /etc/apache2/sites-enabled/directorio, noté que obtuve un archivo, no un enlace simbólico a site.conf + reenable mod php5.6 (sudo a2dismod php5.6; sudo a2enmod php5.6) mi servicio apache2 se ha iniciado sin "ohh- ahh "
Vladimir Ch
18

El problema se debe a que algunos archivos de configuración se eliminan, debe reinstalarlos.

REINSTALL APACHE2:

Para reemplazar los archivos de configuración que se han eliminado, sin purgar el paquete, puede hacer lo siguiente:

sudo apt-get -o DPkg::Options::="--force-confmiss" --reinstall install apache2

Para eliminar completamente los archivos de configuración de apache2, debe:

sudo apt-get purge apache2

que luego te permitirá reinstalarlo de la manera habitual con:

sudo apt-get install apache2

Se requiere la purga para eliminar todos los archivos de configuración: si elimina los archivos de configuración pero solo elimina el paquete, entonces esto se recuerda y los archivos de configuración que faltan no se reinstalan de manera predeterminada.

Luego VUELVA A INSTALAR PHP5:

apt-get purge libapache2-mod-php5 php5 && \
apt-get install libapache2-mod-php5 php5
Rujika Rajan
fuente
1
¿Por qué crees que se eliminaron algunos archivos de configuración?
Léo Léopold Hertz 준영
2

Problema:

Job for apache2.service failed because the control process exited with error code. See "systemctl status apache2.service" and "journalctl -xe" for details.

Solución:

  • Para eliminar completamente los archivos de configuración de apache2, debe:

    1) sudo apt-get purge apache2

  • que luego te permitirá reinstalarlo de la manera habitual con:

    2) sudo apt-get install apache2

==> Funciona bien ...

Gracias....

Riyal Padhiyar
fuente
2

Obtuve el mismo error después de eliminar un host virtual. El problema era el archivo conf de SSL persistente asociado con ese host ubicado en /etc/apache2/sites-enabled. El SSL fue a través de Let's Encrypt, por lo que el código que eliminé fue:

sudo rm yourdomain.com-le-ssl.conf
iMarketingGuy
fuente
1

Obtuve los mismos errores al trabajar con .htaccess

Acabo de poner este comando

<Directory /var/www/html>
                Options Indexes FollowSymLinks MultiViews
                AllowOverride All
                Order allow,deny
                allow from all
</Directory>

en /etc/apache2/sites-enabled/000-default.confesta carpeta

después de agregar esto tengo el error

luego elimino estas instrucciones de paz del archivo y mi error se ha resuelto.

Kaushikdjay
fuente
1

lo más probable es que tenga un error de sintaxis. para mí estaba en mi carpeta 'sitios habilitados'.

escribí mal 'ServerAlias' a 'ServerAlisa'.

Bruce Tong
fuente
La mía fue que escribí mal mi carpeta.
Lynnell Emmanuel Neri
0

Esto es principalmente un error de configuración. Acabo de tener un sitio antiguo habilitado en Apache, lo que causó este error. Así que tuve que desactivarlo antes de volver a cargar Apache.

sudo a2dissite <my-site>
sudo service apache2 reload

Problema resuelto :)

Thomas Venturini
fuente
0

¡Gracias por tu ayuda! Pude instalar correctamente con Solution:

Para eliminar completamente los archivos de configuración de apache2, debe:

  1. sudo apt-get purge apache2 que luego te permitirá reinstalarlo de la manera habitual con:

  2. sudo apt-get install apache 2

Ahora funciona bien.

Renata Sembay
fuente
0

Creo que el problema es que tiene algún sitio habilitado pero eliminó su archivo de configuración. Intente deshabilitar el sitio con sudo a2dissite "name" y luego reinicie el servidor apache. Al menos este fue el problema para mí y esta acción lo resolvió.

Ilias Koritsas
fuente
0

En mi caso, el error comenzó a aparecer después de hacerlo apt upgrade. Después de jugar mucho, fui a los siguientes directorios para ver qué puedo desactivar.

  • / etc / apache2 / mods-enabled - a2dismod (para volver a activar a2enconf)
  • / etc / apache2 / conf-enabled - a2disconf (para volver a encender a2enconf)

En mi caso, tenía esos MODS habilitados.

ingrese la descripción de la imagen aquí

Parece que apt-upgradedebe haber eliminado / roto php7.2 porque tan pronto como lo deshabilité y reinicié, todo funcionó. Por supuesto, en el caso de cualquier otra persona, puede ser algo diferente. Cuando Apache falla, puede ser una mala configuración o un mal mod. Tienes que elegir tus batallas.

Chico loco
fuente