Je ne sais pas s'il y en a? mais php construit dans le serveur Web également enregistrer ses journaux d'erreur dans un fichier? à des fins de suivi, comme lors de la création d'un hôte virtuel dans Apache.
MISE À JOUR: J'utilise Mac OSX
Oui, PHP possède une fonctionnalité de journal des erreurs intégrée.
PHP enregistre automatiquement les erreurs dans ce fichier.
Si vous souhaitez enregistrer les erreurs, utilisez la fonction error_log ()
L'emplacement du fichier change en fonction de l'environnement.
par exemple.
dans Ubuntu 12.04, ses
var/log/php_errors.log
Dans les fenêtres XAMPP,
\xampp\php\logs\php_errors.log
Sous Mac OS,
/var/log/Apache2/php_errors.log
Le serveur Web intégré ne se connecte nulle part par défaut, vous devez donc lui fournir un fichier php.ini pour le personnaliser. Par exemple, si vous avez créé un fichier appelé php.ini avec ce contenu:
error_log = /Users/me/test.log
log_errors = on
date.timezone = UTC
Ensuite, vous pouvez démarrer le serveur Web intégré de PHP comme ceci:
php -S 127.0.0.1:8080 -c php.ini
Et les appels error_log () seront enregistrés dans le fichier que vous avez spécifié.
Lorsque vous utilisez le serveur intégré PHP sur macOS, vous devez spécifier error_log
dans votre fichier de configuration php.ini
(php -i | grep php.ini
).
Si vous décidez avec syslog
(au lieu d'un fichier journal) tel que:
error_log = syslog
Ensuite, pour vider les journaux, vous pouvez utiliser la commande log
sur macOS, par exemple.
log stream --predicate 'processImagePath contains "php"'
Sinon, utilisez un chemin de fichier spécifique pour le journal des erreurs (par exemple /usr/local/var/log/php-error.log
).
Pour mettre à jour pour Mac OS X High Sierra (10.13.5) : cela a fonctionné pour moi sans qu'il soit nécessaire de modifier les valeurs par défaut de PHP. Juste utiliser
error_log('*** notice this***');
et suivre le journal des erreurs:
tail -f /var/log/Apache2/error_log