さくらインターネットでPHPのエラーログを出力

スポンサーリンク

php.ini編集

FTPクライアントで接続する場合

FTPクライアントで接続し、以下の場所にある「php.ini」を開きます。

「ユーザー名」は自分のユーザー名に置き換えてください。

/home/ユーザー名/www/php.ini

php.iniの末尾に以下を追記します。

こちらも「ユーザー名」は自分のユーザー名にします。

; エラーログ関連
display_errors = Off
error_reporting = "2047"
log_errors = On
error_log = "/home/ユーザー名/log/php-error.log"

「/home/ユーザー名/log/」には、httpdのログなどが既にあるはずなので、FTPクライアントで接続したら確認しておきましょう。

「access_log_日付」や「error_log_日付」など多数のログがあるはずです。

FTPクライアントにFileZillaを使っている場合、設定 > ファイルの編集 > 「ローカルで編集したファイルを監視して変更のアップロードを促す」にチェックが入っていると楽です。

FileZillaでphp.iniを開く > 編集して保存 > FileZillaに戻るとアップロードを催促されるのでOKするとアップロードされます。

さくらインターネットのコントロールパネルから行う場合

さくらインターネットのコントロールパネルからも編集が行なえますが、既にphp.iniを触っている場合、コントロールパネルから入力した内容で上書きされ、入力しなかった項目は消えてしまいます。

上記のようなトラブルを避けるため、「常にFTPで接続して編集 or SSH接続で編集」するか「常にコントロールパネルから編集」するか、どちらかにする必要があります。

今までFTPやSSH接続で編集していた場合で、今後はコントロールパネルから編集する場合、今回の入力内容だけでなく、今までの内容も全て入力してください。

レンタルサーバ コントロールパネル

スクリプト設定 > php.ini設定と進みます

テキストエリアに入力して「保存する」のクリックで反映されます。

例えば、既存のphp.iniが以下だったとして、

extension=imagick.so
error_reporting 8191
memory_limit = 128M
post_max_size = 120M
upload_max_size = 120M
upload_max_filesize = 120M
max_input_time = 600
max_execution_time = 600

今回の追記内容の以下を保存すると、前回までの内容は全て消えてしまい、今回の内容(以下)だけになってしまいます。

; エラーログ関連
display_errors = Off
error_reporting = "2047"
log_errors = On
error_log = "/home/ユーザー名/log/php-error.log"

以下のように、既存のphp.iniに加えて全て入力すればOKです。

extension=imagick.so
error_reporting 8191
memory_limit = 128M
post_max_size = 120M
upload_max_size = 120M
upload_max_filesize = 120M
max_input_time = 600
max_execution_time = 600

; エラーログ関連
display_errors = Off
error_reporting = "2047"
log_errors = On
error_log = "/home/ユーザー名/log/php-error.log"

今後、変更される可能性がありますので、コントロールパネルのphp.ini編集画面で必ず確認しましょう。

エラー確認用.phpと実行

以下を「test.php」などとして保存し、「test」など適当なディレクトリを作成し、アップロードします。

<?php
trigger_error("TEST-ERROR", E_USER_ERROR);
?>

アップロードしたらブラウザから先程のtest.phpにアクセスします。

https://ドメイン/test/test.php

真っ白なページが表示されると思いますが、これでOKです。

実行が終わったら不要なので削除しておきます。

ログの確認

再びFTPで接続し、先程指定したログディレクトリを開きます。

/home/ユーザー名/log/

その中に以下のファイルがあるので開きます。

探しにくい場合はFTPクライアントで「更新日時」で並び替えて最新のものを上にして確認します。

php-error.log

ファイルが存在し、以下のエラーが記録されていればOKです。

[11-Sep-2020 23:03:32 UTC] PHP Fatal error: TEST-ERROR in /home/ユーザー名/www/test/test.php on line 2

 

コメントフォーム

タイトルとURLをコピーしました