¿Dónde están los archivos de registro de Apache y PHP?

228

He instalado Apache, PHP y MySQL en la edición de escritorio Ubuntu 10.10, y está funcionando bien.
Excepto que no tengo idea de dónde buscar archivos de registro de Apache o PHP.

Stann
fuente

Respuestas:

315

Por defecto, /var/log/apache2/error.log.

Esto se puede configurar en /etc/php5/apache2/php.ini.

misterben
fuente
Sí. Entendido. fue un poco diferente en windows.
Stann
1
Los registros de Apache se pueden rotar, por lo que es posible que desee verificar todos los error.log.*archivos
nuoritoveri
@misterben, ¿pueden ayudarme a habilitar el mismo registro de errores para centOS 7? ¿alguna idea?
Botella roja
unix.stackexchange.com/a/269090/2799 tiene información para otras distribuciones
misterben
¿Qué pasa si apache no está instalado, solo php?
mils
67

Verifique estas configuraciones en php.ini:

  1. error_reporting = E_ALL | E_STRICT (según lo recomendado para el desarrollo en php.ini)
  2. error_log = /var/log/php_errors.log
  3. Luego cree el archivo de registro manualmente

    touch /var/log/php_errors.log
    chown www-data: /var/log/php_errors.log
    chmod +rw /var/log/php_errors.log
    

Ahora puede ver los errores de PHP de esta manera

tail /var/log/php_errors.log

Esta es una solución agradable para este problema para mí.

Nikolay Chuprina
fuente
44
también necesitaría un paso para reiniciar el apache para que la configuración surta efecto
rbawaskar
Mantenlo apretado:chmod 640 /var/log/php_errors.log
berbt
26

También puede definir un archivo de registro de error específico para cada VirtualHost en Apache. Si tiene un VirtualHost definido /etc/apache2/sites-available/y habilitado en /etc/apache2/sites-enabled(enable with sudo a2ensite [your-virtualhost-definition-file]), puede cambiar el registro de errores agregando la siguiente línea dentro de su configuración de VirtualHost:

ErrorLog ${APACHE_LOG_DIR}/[your-vhost]-error.log

Eso podría ser útil si tiene muchos vhosts y desea dividirse donde informan los errores.

Además, puede ver su registro de errores en vivo emitiendo el siguiente comando (adáptese a su propio archivo de registro si es diferente del predeterminado):

sudo tail -f /var/log/apache2/error.log

Esto es particularmente útil cuando se realiza la depuración en vivo.

ywarnier
fuente
¡Funciona! Si comento error_log = syslogen php.ini
mmv-ru
2

Si Apache se configuró con Webmin / Virtualmin, hay una carpeta separada para cada VirtualHost.

Está

~/logs

carpeta para cada usuario de VirtualHost.

Estos son dos archivos:

~/logs/access_log

y

~/logs/error_log

Entonces ellos son

/home/onedomain/logs/access_log

/home/onedomain/logs/error_log

/home/anotherdomain/logs/access_log

/home/anotherdomain/logs/error_log

...

etc.

Para ver los archivos de registro para cada inicio de sesión de dominio en particular como usuario propietario de VirtualHost de ese nombre de host y ejecutar

tail -f ~/logs/error_log

Ilich
fuente