php エラー ログを出力するための解決策: 1. [php-fpm.conf] の設定を変更します (ない場合は追加します); 2. [php.ini] の設定を変更します (そうでない場合は追加します) ; 3. [php-fpm] を再起動します。
php エラー ログを出力する解決策:
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
」にエラーログが表示されます
注意:
1 1.php-fpm.conf の php_admin_value[error_log] パラメータは、php.ini の error_log パラメータをオーバーライドします
したがって、phpinfo()
に表示される最後の error_log
ファイルに書き込み権限があり、php_admin_value[error_log]
パラメータが設定されていないことを確認してください。それ以外の場合はエラーになります。 php-fpm
のエラーログにログが出力されます。
2. php.ini の場所が見つかりません。結果を表示するには、php の phpinfo()
を使用してください。
3. PHP エラーログをページや画面に出力しないように修正する方法
Modifyphp.ini
display_errors = off
//エラー情報を表示しない(ページや画面に出力しない)log_errors = on
//エラー情報を記録する(ログファイルに保存する)error_reporting = E_ALL
//すべてのエラー メッセージをキャプチャします error_log =
//ログ ファイル名を設定します
プログラム内の上記の設定を変更します
ini_set("display_errors",0) ini_set("error_reporting",E_ALL); //这个值好像是个PHP的常量 ini_set("error_log","<日志文件名>") ini_set("log_errors",1);
4. PHP のエラーログを nginx のエラーログに出力する方法
PHP 5.3.8 以前のバージョンでは、PHP が動作中にユーザーアクセス時にエラーが発生した場合、 FastCGI を介して実行すると、最初に PHP Medium のエラーログに書き込まれます;
PHP のエラーログを書き込めない場合、エラーの内容は FastCGI インターフェイスに返され、nginx は、 error return from FastCGI;
PHP 5.3.9 以降のバージョンでは、PHP はエラー発生後にのみ PHP のエラーログへの書き込みを試みますが、失敗した場合は FastCGI に戻らず、エラー ログは次のようになります。 php-fpmのエラーログに出力されます。
したがって、php エラーログを nginx エラーログに出力したい場合は、php5.3.8 より前のバージョンを使用する必要があり、設定ファイル内の php の error_log は、php ワーカープロセスに対して書き込み可能ではありません。
関連する学習の推奨事項 :
以上がphpのエラーログが出力された場合はどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。