WordPress500エラーの解消方法

WordPressを利用してブログを運営している際に、プラグインをアップデートまたはインストールすると、500内部エラーが発生することがあります。

500エラーは「HTTP ERROR 500」または「Internal Server Error」と表示され、Webサーバーの内部でエラーが発生している状態を表します。

WordPressを運用しているサーバーで「500エラー」が発生すると、Webブラウザ上からブログや管理画面にアクセスできなくなります。

そんな非常事態が発生した場合に、あなたが落ち着いて対処できるように、500エラーの解消方法を紹介します。

ブログ運営に慣れていない人の場合、500内部エラーの復旧方法がわからなくてパニックになる人も多いです。冷静に復旧作業を行えば、それほど難しくありません。
WordPress運用の基礎知識があれば、簡単に復旧作業を完了できます。

下記に復旧手順をまとめましたので参考にして下さい。

はじめに

500エラーとは?

初心者

500エラーは、Webサーバーの内部でプログラムが正常に動作しなくてエラーが発生している状態を表します。

Webブラウザの画面に「HTTP ERROR 500」または「Internal Server Error」と表示されます。

WordPress運用時に発生する500エラーの原因は、プラグインやテーマを構成しているPHPファイルのコードや「.htaccess」の記述ミスが原因で起こる場合が多いです。

プラグインが原因でエラーが発生することがある

Internal Server Error

WordPress運用時には、プラグインが原因で500エラー(Internal Server Error)が発生することがあります。

WordPress本体のデバック(検証作業)は多くの人が参加して行われています。
しかし、プラグインに関しては、開発者に任せられており、デバッグは行われていますが、完璧ではありません。
プラグインのアップデートを適用すると、ごく稀に、エラーが発生することがあります。

WordPressをはじめ、世の中に存在するシステムは、人間がプログラミングして開発しています。
当然、ソースコードの書き間違えや相性問題など、人為的な問題が原因でエラーが発生する場合があります。

500エラーが発生する原因
  • サーバー環境との相性が悪くてエラーが発生する。
  • Webサーバーの設定ファイルに変更を加えてエラーが発生する。
  • 「.htaccess」の設定ファイルに変更を加えてエラーが発生する。
  • PHPのソースコードにエラーがある。
  • ファイルやディレクトリの編集権限の設定にエラーがある。
  • サーバーに負荷がかかり過ぎて割り当てられた処理能力を超えた。

プラグインのアップデートが原因

WordPressのプラグインをアップデートしたことが原因で発生した500内部エラーを解消する方法について説明します。

簡単に説明すると、プラグインのディレクトリ構造を変更して、プラグインを強制停止させます。
そして、プラグインの開発者がバグの存在に気付いて、新しいバージョンが提供されるまで待ちます。

作業の流れ
  1. 500内部エラー発生
  2. プラグインのディレクトリ構造を変更する(FTPソフト)
  3. プラグインが強制停止される
  4. ブログや管理画面を確認する
  5. プラグインのディレクトリ構造を元に戻す(FTPソフト)
  6. プラグインのアップデートを待つ

500内部エラー発生

WordPressプラグインのアップデートを適用すると、ごく稀に500内部エラー(Internal Server Error)が発生することがあります。

500内部エラーが発生した状態では、ブログにも管理画面にもアクセスできなくなります。

もし、そんな非常事態が発生しても慌ててはいけません。
冷静に復旧作業を行えば、直ぐに復旧できます。

HTTP 500 ERROR(Google Chrome)

HTTP 500 ERROR

Internal Server Error

Internal Server Error

プラグインのディレクトリ構造を変更する

プラグインのディレクトリ構造を変更することで、プラグインを強制停止させます。

FTPソフトを利用して、WordPressを運用しているサーバーに接続します。
直前にアップデートを適用したことでエラーが発生したと思われるプラグインを探して下さい。
そして、エラーの原因と思われるプラグインのディレクトリ構造を変更して下さい。

ディレクトリの場所

/wp-content/plugins/sample-plugin/

ディレクトリの変更

例えば、下記の様にアンダーバーを付けてディレクトリ(階層)の構造を変更します。

/wp-content/plugins/____sample-plugin/

FTPソフトを利用してディレクトリ構造を変更する

FTPソフトを利用してディレクトリ名を変更する

プラグインが強制停止される

プラグインのディレクトリ構造を変更すると、サーバー上のディレクトリやファイルの構造がずれるので、プラグインが強制停止されます。

プラグインが強制停止される

プラグインが強制停止される

ブログや管理画面を確認する

プラグインが強制停止されたら、ブログや管理画面を閲覧できるようになります。
Webブラウザでブログや管理画面を確認して下さい。
殆どの場合は、これで問題が解消します。

プラグインのディレクトリ名を元に戻す(FTPソフト)

ブログや管理画面を閲覧できるようになったら、プラグインのディレクトリ構造を元に戻しておきましょう。プラグインを有効化しなければ、ブログに影響を与えることはありません。

プラグインのアップデートを待つ

もし、プラグインのアップデートが原因でエラーが発生していた場合は、プラグインのサポートフォーラム(wordpress.org)に同じような不具合を報告する書き込みが投稿されているはずです。

プラグインのサポートフォーラムは、プラグインの開発者も見ているので、不具合を解消したアップデート版が提供されるまで待ちましょう。

プラグインのインストールが原因

プラグインのインストールが原因の場合

プラグインをインストールしたことが原因で発生した500エラーに関しても、上記で説明した手順でプラグインを強制停止させれば、500エラーを解消できる場合もあります。

もし、それでも解決しない場合は、プラグインが「.htaccess」や「wp-config.php」の設定ファイルに書き加えたことが原因の可能性があります。

その場合は、下記の2つのファイルを確認して、プラグインが追加した部分を取り除いて下さい。

エラーの原因の可能性がある設定ファイル
.htaccess Webサーバーをディレクトリ単位で制御するための設定ファイル
wp-config.php WordPressの設定ファイル

詳しくは下記の参考記事をご覧ください。
キャッシュ機能を拡張するプラグインで発生したエラーを解消する方法を説明しています。

参考記事

まとめ

WordPressを利用してブログを運営している際に、プラグインをアップデートすると、500内部エラーが発生することがあります。この記事で紹介した復旧手順を参考にして下さい。

WordPressプラグインのアップデートが原因で発生するエラーを防ぐ方法としては、ブログを運用する本番環境とは別に「テスト環境」を用意することをお勧めします。

本番環境とほぼ同じ環境の「テスト環境」でプラグインの動作を試した上で、本番環境にアップデートを適用すれば、本番環境でのエラーが発生することを防ぐことができます。