Activer les journaux d'erreurs PHP sur l'hébergement web
Comment configurer l'affichage des erreurs et la journalisation pour les applications PHP.
Analyser régulièrement les logs PHP est indispensable pour détecter les erreurs, les avertissements et les bugs avant qu'ils n'affectent l'expérience utilisateur. Il est vivement recommandé de toujours garder la journalisation des erreurs activée, en particulier pendant les phases de développement et de test.
1. Activation des logs PHP via .htaccess
La façon la plus efficace d'activer l'affichage et la journalisation des erreurs dans un environnement d'hébergement web consiste à ajouter des directives spécifiques au fichier .htaccess situé à la racine de votre site.
Configuration de base :
php_value display_errors On
php_value display_startup_errors On
Configuration avancée (recommandée) :
php_flag display_errors On
php_flag display_startup_errors On
php_flag log_errors On
php_flag ignore_repeated_errors Off
php_flag ignore_repeated_source Off
php_flag track_errors On
php_value error_reporting -1
php_value error_log /home/ваш_логин/public_html/php-errors.log
Une fois ces lignes ajoutées, les erreurs PHP vont :
- S'afficher directement à l'écran (lorsque
display_errorsest activé) - Être enregistrées dans le fichier
php-errors.logspécifié
2. Activation des erreurs dans un script PHP
Si vous n'avez besoin de déboguer qu'un script précis, vous pouvez activer la remontée d'erreurs directement dans le fichier PHP en ajoutant le code suivant au début du script :
ini_set('display_errors', '1');
ini_set('display_startup_errors', '1');
ini_set('error_reporting', E_ALL);
3. Configuration via php.ini
Si votre environnement d'hébergement donne accès à un fichier php.ini personnalisé, vous pouvez gérer ces paramètres de façon globale :
error_reporting = E_ALL
display_errors = On
display_startup_errors = On
log_errors = On
log_errors_max_len = 1024
error_log = /home/ваш_логин/public_html/php-errors.log
Journalisation pour les tâches Cron
Les erreurs générées par des scripts exécutés via Cron ou en ligne de commande (CLI) n'apparaissent pas dans les logs standard du serveur web. Pour capturer cette sortie, redirigez le résultat d'exécution vers un fichier de log dédié dans votre commande Cron :
/usr/local/bin/php /home/ваш_логин/public_html/site.ru/script.php &>> /home/ваш_логин/logs/cron.log
Il est recommandé de créer un répertoire /logs dédié dans votre dossier personnel afin de stocker tous les logs système et liés aux tâches Cron de façon sécurisée.
Bonnes pratiques
- Mode développement : gardez
display_errors = Onpour obtenir un retour immédiat pendant le développement. - Sites en production : désactivez toujours
display_errorssur les sites en ligne pour éviter que des informations de chemin sensibles ne soient exposées aux visiteurs. Veillez à ce quelog_errors = Onreste actif pour la surveillance en arrière-plan. - Maintenance : consultez régulièrement votre fichier
php-errors.logpour détecter des problèmes discrets qui n'interrompent pas forcément la page mais dégradent les performances. - Cache : après avoir mis à jour vos paramètres PHP, videz le cache de votre navigateur et, le cas échéant, purgez l'OPCache pour que les modifications prennent effet.
Aide
Une question ou besoin d'un coup de main ? Écrivez-nous via le système de tickets — nous sommes toujours là pour vous aider !