Generalidades
Este artículo explica cómo habilitar y controlar los errores de PHP en tu sitio web. Esto puede ser necesario para solucionar problemas en un sitio web, ya que DreamHost deshabilita todas las advertencias de PHP de manera predeterminada, por lo que nunca deberías verlas en tu sitio web cuando realices cambios en PHP.
Habilitar temporalmente las advertencias de PHP
Revisa este artículo para obtener más información sobre cómo habilitar temporalmente las advertencias de PHP en el panel. Una vez habilitadas, el archivo error.log muestra estas entradas adicionales:
- PHP Obsoleto
- Avisos
- Mensajes estrictos
- Advertencias
Habilitar el registro de errores de PHP a través de phprc
Para mostrar las advertencias en tu sitio en lugar de en el panel, agrega la siguiente línea al archivo phprc usando un cliente FTP o SSH:
display_errors = on
Si se producen errores de PHP, ahora se mostrarán en tu sitio.
Sitios en Vivo
Esto no se recomienda en un sitio web en vivo, ya que los visitantes verán los errores.
Configurar el registro de errores personalizado
Los siguientes pasos agregan código a tu archivo phprc para registrar todos los errores de PHP en un nuevo archivo llamado php.log.
Decidir donde debería ir el archivo php.log
Primero debes decidir dónde deseas que se cree tu archivo php.log. Esto puede estar en cualquier directorio que desees siempre que tu usuario pueda escribir en ese directorio. La ubicación más simple sería en el directorio principal de tu usuario. Por ejemplo:
/home/username/php.log
No es posible crear tu archivo php.log en tu directorio /home/username/logs. Este directorio es creado por DreamHost y es propiedad de dhapache, por lo tanto, tu usuario no puede escribir en este directorio.
Editar el archivo phprc
Agrega estas líneas a tu archivo phprc usando un cliente de FTP o SSH. Asegúrate de reemplazar username con tu usuario shell.
log_errors = 1
error_log = /home/username/php.log
Elimina todos los procesos de php
Asegúrate de terminar todos los procesos activos de php para asegurarte de que tu nueva configuración tome efecto.
Confirmar tus cambios
Una vez que hayas editado el archivo y hayas terminado todos los procesos de PHP, debes verificar para confirmar que los valores se hayan actualizado. Puedes hacer esto creando un archivo phpinfo.php.
Si no ves que tus cambios se han actualizado, intenta eliminar los procesos de PHP nuevamente:
Probar el archivo php.log
El nuevo archivo php.log no existirá en un principio. Se crea automáticamente después de que se produce un error de PHP. Este archivo continuará registrando los errores de PHP futuros.
Para probar el archivo php.log, crea un archivo PHP que genere un error. Por ejemplo, crea un archivo llamado error.php con el siguiente contenido y cárgalo en tu sitio.
<?php $file=fopen("welcome.txt","r"); ?>
Cuando visitas la página example.com/error.php desde un navegador, sale un error. Si luego revisas el directorio principal de tu usuario, verás que se ha creado el archivo php.log y que registraste este error de PHP. Usa el comando cat para leer el contenido del archivo:
[server]$ cat ~/php.log