8
votes

Magasinez le fichier journal d'erreur PHP dans le répertoire de script sans ajouter de code PHP aux scripts existants

J'ai été occupé à mettre en place mon propre VPS après avoir été utilisé pour cPanel , mais je ne peux pas sembler savoir comment laisser PHP créer un error_log Fichier dans le même répertoire que le script qui jette les erreurs.

J'aimerais que cela se produise sans que je doive ajouter une ligne de code à chaque fichier .php. Dans cpanel, cela fonctionne de la boîte en quelque sorte.

Exemple:

Erreur dans: /var/www/webapp1/index.php
Logfile Emplacement: / var / www / webapp1 / error_log

erreur dans: /var/www/info/system/test.php
Logfile Emplacement: / var / www / info / system / error_log

Fondamentalement, je veux PHP pour stocker un fichier error_log dans chaque répertoire pour les scripts dans ce répertoire.

Informations supplémentaires:


1 commentaires

Depuis que vous avez commenté deux réponses, accepter peut-être une réponse pour indiquer laquelle une réponse a répondu à votre question?


4 Réponses :


1
votes

Fondamentalement, je veux PHP pour stocker un fichier error_log dans chaque répertoire pour les scripts dans ce répertoire

En supposant que vous utilisiez Apache, vous pouvez utiliser la directive Error_Log d'Apache dans la Virtualhost pour accomplir ce comportement. Si la mémoire me sert à droite, PHP elle-même ne décidera pas où elle stocke ses erreurs.


1 commentaires

Cela ne répond toujours pas à ma question, comment puis-je la définir pour enregistrer le journal d'erreur dans le même répertoire que le script PHP pour chaque répertoire différent, comme CPanel?



2
votes

Pour cela, il existe la directive error_log dans php.ini comme: xxx

où la chaîne représente le nom du fichier lorsque les erreurs de script doivent être enregistrées. Le fichier doit être écritable par l'utilisateur du serveur Web. Si le syslog de valeur spéciale est utilisé, les erreurs sont envoyées à l'enregistreur système. Sur UNIX, cela signifie que Syslog (3) et sur Windows NT signifie le journal des événements. L'enregistreur système n'est pas pris en charge sur Windows 95. Voir aussi: syslog () . Si cette directive n'est pas définie, les erreurs sont envoyées à l'enregistreur d'erreur SAPI. Par exemple, c'est une erreur d'erreur dans Apache ou STDERR dans CLI.


2 commentaires

Cela ne répond toujours pas à ma question, comment puis-je la définir pour enregistrer le journal d'erreur dans le même répertoire que le script PHP pour chaque répertoire différent, comme CPanel?


Eh bien, vous devez nous donner un peu plus de détails - OS utilisé, vous avez mentionné VPS - Avez-vous un VPS pour chaque utilisateur / application? Quel serveur utilisez-vous?



4
votes

Définir la valeur erron_log code> au nom du journal d'erreur que vous souhaitez apparaître dans le répertoire, mais ne mettez pas de barres obliques. Le fichier sera enregistré dans le répertoire à partir duquel le script est couru, donc le même répertoire.

error_log = "php_error.log"


0 commentaires