php エラー ログを出力する方法: 1. php-fpm.conf の catch_workers_output および error_log 設定を変更します; 2. php.ini 設定ファイルを変更します; 3. php-fpm を再起動します。
#この記事の動作環境: Windows10 システム、php 7&&nginx 1.14、thinkpad t480 コンピューター。
nginx は Web サーバーであることは誰もが知っているので、nginx のアクセス ログにはアクセスされたページのみが記録され、php のエラー ログ情報はありません。 nginx は php へのリクエストを php-fpm fastcgi プロセスに送信して処理しますが、デフォルトの php-fpm では php-fpm のエラーメッセージのみが出力され、php-fpm のエラーログには php のエラーログは表示されません。
この状況の理由は、php-fpm 設定ファイル php-fpm.conf がデフォルトでワーカー プロセスのエラー出力をオフにし、それらを /dev/null に直接リダイレクトするため、エラーも出力されないことです。 phpのエラーログはnginxのログでもphp-fpmのエラーログでも見ることができます。
しかし、この場合、デバッグは非常に困難になります。では、この問題をどのように解決すればよいでしょうか?以下を見てみましょう!
1. php-fpm.conf の設定を変更し、
catch_workers_output = yes
error_log = log/error_log
ログイン後にコピー
2. php.ini の設定を変更し、
log_errors = On
error_log = "/usr/local/lnmp/php/var/log/error_log"
error_reporting=E_ALL&~E_NOTICE
ログイン後にコピー
3 を追加します。 php-fpm
PHP がエラーを実行すると、「/usr/local/lnmp/php/var/log/error_log」にエラー ログが表示されます。
推奨学習:
php トレーニング
以上がPHPのエラーログを出力する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。