Maison > Article > développement back-end > Que dois-je faire si php-fpm sous nginx n'enregistre pas les journaux d'erreurs php ?
Comment résoudre le problème selon lequel php-fpm sous nginx n'enregistre pas les journaux d'erreurs php : 1. Modifiez la configuration dans [php-fpm.conf], sinon, ajoutez-la 2. Modifiez la configuration dans ; [php.ini], sinon, ajoutez ; 3. Redémarrez [php-fpm].
Comment résoudre le problème selon lequel php-fpm n'enregistre pas le journal des erreurs php sous nginx :
1. Modification de la configuration dans php-fpm.conf, sinon, ajoutez
catch_workers_output = yes error_log = log/error_log
2 Modifiez la configuration dans php.ini, sinon, ajoutez
log_errors = On error_log = "/usr/local/lnmp/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/error_log"
Veuillez noter :
1. Le paramètre php-fpm.conf
dans php_admin_value[error_log]
écrasera le paramètre error_log
dans php.ini
donc assurez-vous que vous êtes dans phpinfo()
Le fichier error_log final vu dans a des autorisations d'écriture et ne définit pas le paramètre php_admin_value[error_log]
, sinon le journal des erreurs sera affiché dans le journal des erreurs php-fpm
.
2. L'emplacement de php.ini est introuvable, utilisez phpinfo()
de php pour afficher les résultats
3 Comment modifier le journal des erreurs PHP pour qu'il ne soit pas affiché sur la page ou. screen
Modifier php.ini
display_errors = off //Ne pas afficher les informations d'erreur (pas de sortie sur la page ou l'écran)
log_errors = on / /Enregistrer les informations d'erreur (enregistrer dans le fichier journal)
error_reporting = E_ALL //Capturer toutes les informations d'erreur
error_log = //Définir le nom du fichier journal
Modifier la configuration ci-dessus dans le programme
ini_set("display_errors",0) ini_set("error_reporting",E_ALL); //这个值好像是个PHP的常量 ini_set("error_log","<日志文件名>") ini_set("log_errors",1);
4 Comment afficher le journal des erreurs php dans le journal des erreurs nginx
rrreee. 🎜>
dans PHP 5.3 .8 et versions précédentes, lorsque PHP s'exécute via FastCGI et qu'une erreur se produit lors de l'accès utilisateur, elle sera d'abord écrite dans le journal des erreurs de PHP Si le journal des erreurs de PHP ne peut pas être écrit, l'erreur le contenu sera renvoyé Donnez l'interface FastCGI, puis nginx l'enregistre dans le journal des erreurs nginx après avoir reçu le retour d'erreur de FastCGI Dans PHP 5.3.9 et versions ultérieures, PHP essaie d'écrire dans le journal des erreurs PHP uniquement après une erreur se produit. S'il échoue, il ne reviendra pas à FastCGI et le journal des erreurs sera affiché dans le journal des erreurs de php-fpm. Donc, si vous souhaitez afficher le journal des erreurs php dans le journal des erreurs nginx, vous devez utiliser une version antérieure à php5.3.8, et le error_log de php dans le fichier de configuration n'est pas accessible en écriture pour le processus de travail php.Recommandations d'apprentissage associées : Programmation PHP du débutant au compétent
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!