nginx est différent d'Apache. Dans Apache, vous pouvez spécifier directement le journal des erreurs de php, de sorte que les informations sur les erreurs lors de l'exécution de php soient directement saisies dans le journal des erreurs de php, qui peut être facilement interrogé.
Dans nginx, les choses deviennent comme ceci : nginx enregistre uniquement les journaux d'accès pour les visites de pages. Il n'y aura aucune information du journal des erreurs PHP. nginx envoie la demande de php au processus php-fpm fastcgi pour traitement. Le php-fpm par défaut affichera uniquement le message d'erreur de php-fpm, et le journal des erreurs de php ne peut pas être vu dans le journal des erreurs de php-fpm.
La raison est que le fichier de configuration php-fpm php-fpm.conf désactive par défaut la sortie d'erreur du processus de travail et les redirige directement vers /dev/null, nous avons donc à la fois le journal des erreurs nginx et le journal des erreurs php-fpm. . Je ne peux pas voir le journal des erreurs php.
Nous devons donc effectuer les réglages suivants pour voir comment php-fpm n'enregistre pas les journaux d'erreurs php sous nginx :
1 Modifiez la configuration dans php-fpm.conf Sinon, veuillez ajouter :
. Copiez le code Le code est le suivant :
[global]
; remarque : le préfixe par défaut est /usr/local/php/var
error_log = log/php_error_log
[www]
catch_workers_output = yes
2 . Modifiez php.ini Configurez , sinon ajoutez :
Copier le code Le code est le suivant :
log_errors = on
error_log = "/usr/local/php/var/log/error_log"
error_reporting=e_all& ~e_notice
3. Redémarrez php-fpm
Lorsque php exécute une erreur, vous pouvez voir le journal des erreurs dans "/usr/local/lnmp/php/var/log/php_error_log"
S'il apparaît :
Copiez le code Le code est le suivant :
[root@localhost etc]# service php-fpm restart
arrêt gracieux de php-fpm done
démarrage de php-fpm [17 avril 2014 18h40 : 52] erreur : [/usr/local/php/etc /php-fpm.conf:5] entrée inconnue 'catch_workers_
[17-apr-2014 18:40:52] erreur : échec du chargement du fichier de configuration '/usr/ local/php/etc/php-fpm.conf'
[17 avril 2014 18:40:52] erreur : échec de l'initialisation fpm
échec
Veuillez ensuite écrire soigneusement la configuration dans le groupe correspondant lors de la première étape, sinon le message ci-dessus apparaîtra :
Copiez le code Le code est le suivant :
erreur : [/usr/local/php/etc/php-fpm.conf:5] entrée inconnue 'catch_workers_output'
Enfin regardez à l'effet :
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!