ホームページ  >  記事  >  運用・保守  >  nginxでphpのエラーログファイルを出力する方法

nginxでphpのエラーログファイルを出力する方法

王林
王林転載
2023-05-18 16:59:041269ブラウズ

Nginx の設定

PHP エラー ログ ファイルを出力するために、いくつかの設定項目を Nginx 設定ファイルに追加します。通常、CentOS システム上の Nginx 構成ファイルは /etc/nginx/nginx.conf に保存されます。通常はファイルの先頭にあり、ファイル内の http モジュールの構成セクションを見つけて、次の構成項目を追加できます:

http {
    ...
    server {
        ...
        location ~ \.php$ {
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
            include        fastcgi_params;

            # error log
            fastcgi_param PHP_VALUE "error_log=/var/log/nginx/php_errors.log";
        }
        ...
    }
    ...
}

この構成項目は、アクセスされた URL が で終わる場合にのみ適用されます。 php、つまり場所 ~.php$ を使用します。 fastcgi_pass には、PHP FastCGI サーバーのアドレスとポートが設定されます。 fastcgi_param は PHP のパラメータを設定するために使用されます。SCRIPT_FILENAME は PHP スクリプトのパスとファイル名を指定します。デフォルトの FastCGI パラメータを使用するには、fastcgi_params を Nginx に含める必要があります。最後の行は、fastcgi_param PHP_VALUE "error_log=/var/log/nginx/php_errors.log"; を追加します。これは、PHP エラー情報を /var/log/nginx/php_errors.log ファイルに記録することを意味します。

ログ ファイルの作成

PHP エラー情報を記録するログ ファイルを作成するこれは、Nginx の構成後に必要な手順です。ログ ファイルを /var/log/nginx/php_errors.log に保存するとします。次のコマンドを使用してファイルを作成できます:

sudo touch /var/log/nginx/php_errors.log

次に、次のコマンドを使用して所有者と権限を変更します。ファイルの内容:

sudo chown nginx:nginx /var/log/nginx/php_errors.log
sudo chmod 644 /var/log/nginx/php_errors.log

Testing

テスト時に PHP スクリプトを作成すると、エラーが発生します。例:

<?php
echo 1/0;
?>

これを保存します。スクリプトを test.php として作成し、Nginx の Web ルート ディレクトリ (例: /usr/share/nginx/html/test.php) に配置します。 http://localhost/test.php にアクセスすると、PHP エラーが見つかります。次に、次のコマンドを使用してログ ファイルの内容を表示します:

sudo tail /var/log/nginx/php_errors.log

すべてが正常であれば、次のようなエラー メッセージが表示されるはずです:

[17-Oct-2021 20:52:42 UTC] PHP Warning:  Division by zero in /usr/share/nginx/html/test.php on line 2

以上がnginxでphpのエラーログファイルを出力する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はyisu.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。