Registrar errores PHP en un log

en PHPPhp errorsCompiler errors

Configurar PHP para que muestre los errores en un log

En un entorno de producción siempre será necesario capturar los errores en algun tipo de log. PHP nos lo permite hacer de una forma muy sencilla.

Hay que tener en cuenta que en nuestro entorno de desarrollo nos es más útil que los errores que aparecen al ejecutar una aplicación PHP se muestren por pantalla, sin embargo, esto es peligroso en un entorno real de producción, puesto que estos registros suelen dar información detallada sobre datos de nuestro sistema.

Capturar todos los registros de errores PHP en un archivo

Para configurar los logs de error de PHP podemos modificar el archivo php.ini que se encarga de configurar opciones de PHP. Normalmente suele estar en /etc/php.ini

nano /etc/php.ini

Podemos usar cualquier editor que nos apetezca (vi, o si estás en entorno gráfico gedit, etc..)

Debemos buscar la línea donde aparezca la variable error_log descomentarla y añadir la ruta donde guardaremos el log. Por ejemplo:

error_log = "/var/log/php_errors.log"

También hay que asegurarse que la variable log_errors está a On para que registre errores

log_errors = On

Y finalmente la variable display_errors a Off para que no se muestren los errores por pantalla

display_errors = Off

Para que apache puedea escribir en ese fichero tiene que tener permisos. Podemos cambiar el owner del fichero /var/log/php_errors.log al usuario apache que suele ser el nombre de usuario que usa el servidor httpd

chown apache /var/log/php_errors.log

O sino, también podemos cambiar los permisos para que se pueda escribir

chmod 777 /var/log/php_errors.log

* Atención: Hay que ir con cuidado al asignar este último permiso, ya que en un servidor con múltiples usuarios podrían tener acceso.

Prohibida la reproducción total o parcial de este artículo sin el previo consentimiento de Webtutoriales.com

Comentarios