コンテンツにスキップ

WordPress のエラーログの出力を確認する方法

メインイメージ

WordPress に関するエラーログは大きく分けて 3 種類あります。

A. WordPress のエラーログ

ひとつめは WordPress が管理するエラーログです。

有効化する方法

WordPress のエラーログはデフォルトでは無効になっています。 有効化するには設定ファイル wp-config.phpWP_DEBUG WP_DEBUG_LOG という 2 つの定数を定義します。

define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );

エラーログファイルの場所

上述の設定をすると WordPress インストールディレクトリの下のファイル wp-content/debug.log にエラーログが出力されます。 例えば WordPress インストールディレクトリが /var/www/html の場合、エラーログの出力先は次の場所になります。

/var/www/html/wp-content/debug.log

この際の注意点として、このファイルはデフォルトでインターネット上からアクセス可能という点があります。 .htaccess などでウェブ上からのアクセスを拒否する設定を行っておかないと外部から閲覧される可能性があるため注意してください。

ログの出力先をデフォルト以外の場所に変更することもできます。 そうしたい場合は定数 WP_DEBUG_LOG の値に true ではなく出力先のパスをセットします。

define( 'WP_DEBUG_LOG', '/tmp/wp-errors.log' );

ログの確認が終わったら wp-config.php ファイルを編集して定数 WP_DEBUGWP_DEBUG_LOG の定義を削除してください。 ログ出力を無効化した後も debug.log ファイルも自動では削除されないので、デバッグ作業が終わったらあわせて削除するようにしましょう。

B. PHP のエラーログ

ふたつめは PHP のエラーログです。

PHP のエラーログには WordPress のレイヤーで捕捉できなかったものが出力されます。 例えば、 WordPress の起動処理が終わる前に発生したエラーなどがここに出力されます。 出力先は PHP のランタイム設定 error_log で制御されています。

C. サーバーのエラーログ

サーバーのエラーログとは Apache などのサーバーソフトウェアが管理・生成するものです。 確認方法はホスティング環境によって異なります。

レンタルサーバーを利用している場合

各プロバイダーが提供するエラーログの確認方法に従います。

VPS を利用している場合

SSH などでサーバーマシンにアクセスして、サーバーのログ出力先ディレクトリを確認します。

公式ドキュメンテーション

関連ページ