Maison  >  Article  >  développement back-end  >  Comment afficher le journal des erreurs php

Comment afficher le journal des erreurs php

PHPz
PHPzoriginal
2023-04-19 09:20:383015parcourir

Dans le processus de développement, d'exploitation et de maintenance, il est très courant de rencontrer des erreurs. Surtout dans le développement PHP, le processus de dépannage des erreurs peut être difficile car le message d'erreur ne sera affiché que dans une petite zone de la page ou enregistré dans le journal du serveur. Cet article explique comment afficher les journaux d'erreurs PHP pour permettre aux développeurs de localiser et de résoudre rapidement les problèmes.

1. Scénarios d'erreur PHP courants

  1. Erreurs de code PHP

Lorsqu'une erreur se produit dans le code PHP, le système lève une exception et PHP envoie généralement un message d'erreur au navigateur. Si la fonction de journalisation est activée, les informations sur les erreurs seront également enregistrées dans le fichier journal des erreurs. Cependant, cette méthode ne fonctionne que dans les environnements de développement et non dans les environnements de production.

  1. Erreur de configuration PHP

Il peut y avoir des erreurs de syntaxe dans le fichier de configuration PHP, telles que des erreurs de syntaxe causées par des points-virgules, des crochets, etc. Les erreurs plus graves sont les problèmes de sécurité dans les fichiers de configuration, tels que l'affichage de messages d'erreur dans le navigateur. Ces informations erronées peuvent être utilisées par des attaquants pour mener des attaques. Si une erreur de configuration se produit, vous recevrez généralement un retour immédiat lors de l'accès à l'application.

  1. Erreur de bibliothèque d'extension PHP

PHP implémente de nombreuses fonctions sous forme de bibliothèques d'extension, telles que la connexion à une base de données, la mise en cache, etc. Si vous rencontrez des problèmes lors de l'installation et de l'utilisation de la bibliothèque d'extensions, l'application peut ne pas fonctionner correctement. Ce type d'erreur nécessite généralement de consulter les fichiers journaux PHP pour trouver exactement où se situe le problème.

2. L'emplacement de stockage du journal des erreurs PHP

L'emplacement du journal des erreurs PHP dépend de la valeur définie dans le fichier de configuration PHP (php.ini). L'emplacement des journaux d'erreurs PHP, des journaux d'accès et autres journaux peut être défini dans le fichier php.ini.

  1. Emplacement de stockage du journal des erreurs PHP

Le journal des erreurs PHP peut être défini des deux manières suivantes :

Définissez log_errors = On dans le fichier php.ini pour activer le commutateur du journal des erreurs PHP.

Définissez error_log dans le fichier php.ini pour spécifier l'emplacement de stockage du journal des erreurs PHP. Par exemple : error_log = "/var/log/php_error.log". Lorsqu'une erreur se produit, PHP écrit les informations d'erreur dans le fichier spécifié.

Généralement, les journaux d'erreurs PHP sont stockés dans le répertoire des journaux par défaut du système d'exploitation ou du serveur Web. Les chemins de stockage courants incluent :

Chemin du journal système par défaut : /var/log/messages ou /var/log/syslog ;

Chemin du journal des erreurs du serveur Web Apache : /var/log/httpd/error_log ;

Erreur du serveur Web Ngnix ; chemin du journal : /var/log/nginx/error.log ;

Chemin par défaut du journal PHP-FPM : /usr/local/php/var/log/php-fpm.log

  1. Emplacement du stockage des journaux d'accès

 ; Le journal d'accès enregistre tous les enregistrements d'accès de l'application. Les journaux d'accès peuvent également être activés et configurés en définissant access.log et access.format dans le fichier php.ini. Par exemple :

access.log = "/var/log/php_access.log"

access.format = "%h %l %u %t "%r" %>s %b "%{Referer}i " "%{User-Agent}i""

Les paramètres ci-dessus spécifieront l'emplacement de stockage et la méthode d'enregistrement du journal d'accès. Lorsqu'un utilisateur accède à l'application, les informations d'accès seront enregistrées dans le fichier journal spécifié.

3. Vérifiez le journal des erreurs PHP

Si une erreur se produit lors de l'accès à l'application, ces messages d'erreur peuvent être écrits dans le fichier journal des erreurs PHP. Ces dernières années, afin d'améliorer la sécurité et la stabilité des applications, de plus en plus de sites Web ont désactivé la sortie d'erreurs. Par conséquent, si une erreur PHP se produit, vous pouvez essayer d'afficher le journal des erreurs PHP pour localiser le message d'erreur.

Les journaux d'erreurs PHP contiennent généralement de nombreuses informations, telles que :

Type d'erreur.

Message d'erreur.

Chemin du fichier PHP.

Numéro de ligne.

Horodatage.

Parmi eux, l'horodatage indique l'heure à laquelle cette erreur s'est produite. Pour afficher le journal des erreurs PHP, vous pouvez exécuter la commande suivante dans la ligne de commande du terminal :

tail -f /var/log/php_error.log

La commande ci-dessus affichera les 10 dernières lignes du fichier php_error.log et conserver l'état de sortie afin de configurer l'affichage en temps réel des journaux d'erreurs.

Lors de l'affichage des journaux PHP, vous pouvez également utiliser des scripts pour filtrer. Par exemple, si vous souhaitez rechercher uniquement les erreurs liées à la variable "curl" dans le journal, vous pouvez utiliser la commande suivante :

cat /var/log/php_error.log | grep curl

Cette commande recherchera " curl" messages d'erreur liés.

4. Conclusion

Dans le développement d'applications PHP, le dépannage des erreurs est une tâche essentielle. En fonction du type d'erreur et de son emplacement, le choix d'une méthode de journalisation appropriée peut aider les développeurs à localiser et à résoudre efficacement les problèmes. Cet article détaille l'emplacement de stockage des journaux d'erreurs PHP et comment afficher les journaux d'erreurs PHP. Ces conseils aideront les développeurs à identifier et à corriger les bogues plus rapidement et à améliorer la stabilité du programme.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn