文中の説明画像をクリックすると拡大します。
「500 Internal Server Error」で管理画面には入れない!
WordPressでプラグイン更新をした際に、「500 Internal Server Error」と表示され、ダッシュボードに入れなくなってしまうことがあります。
ダッシュボードに再び入るためには、以下の手順で対応します。
- FTPソフトなどでサーバーにログインする
- プラグインのディレクトリを見つける(プラグインのディレクトリは「/wp-content/plugins/」です)
※もしエラーを起こしているプラグインが特定できている場合は、対象のプラグインのみ名称を変更すればOKです「/wp-content/plugins/(プラグイン名)」) - ディレクトリ名を変更する(任意の名称でOKですが、後から名称を元に戻すので変更前の名称を控えておきましょう)
- ダッシュボードからログインする(→ログインできた場合、更新したプラグインのいずれかがプログラムエラーを起こしている状態です。)
- 再度サーバーにログインしてプラグインのディレクトリ名を元の名称に戻します。全てのプラグインが無効化(強制停止)された状態で表示されるので、一つひとつ有効化していき、どのプラグインに問題があったのかを確認します。
- しばらくするとエラーを起こしていたプラグインのアップデート版が提供されるまで待ってから、改めてプラグインを更新しましょう。プラグインのサポートフォーラムをチェックしておきましょう。
※FTPソフトとは、サーバーにファイルをアップロードしたり、サーバーにあるファイルをアップロードしたりする際に使用するファイル転送用ソフトです。WordPressにてブログなどを公開する際に、Webページを構成するためのファイルをWebサーバーにアップロードするためにも使用します。
こうしてエラーの解消はできますが、そもそもなぜこのようなエラーが起こるのでしょうか?
そして次回以降エラーが起こらないようにする方法はあるのでしょうか?500エラーの意味を踏まえて解説します。
FTPって何だっけ?という方はこちらをご覧ください。
500 Internal Server Errorの意味と原因
「500 Internal Server Error」は、WordPress特有のエラーではなく、Webサーバー内部で起こるエラーの一つです。「500」はエラーコードを表します。
500エラーが起こる原因はいくつかありますが、そのうちの一つがサーバー側で動くプログラムのソースコードの誤りです。
WordPressの場合、サーバー側でPHPというプログラミング言語によってプログラムが作られています。
更新した新しいプラグインのプログラムにエラーが生じていると、WordPressのダッシュボードへのログインができなくなるという症状が起こるのです。
つまり、プラグインの提供者がプログラムを作成する際に設計上何らかのミスをしてしまった可能性が高いということになります。
※PHPとは、プログラミング言語の一つでHTMLに直接書き込めるという特徴があります。サーバー側(WordPressやプラグイン制作者側)にて作動するためクライアント側からはソースコードがどのようになっているのかを見ることはできません。
PHPって何?という方はこちらをご覧ください。
500 Internal Server Errorを防ぐ方法
提供者側のミスによって生じるエラーでもある以上、500エラーを100%防ぐ方法はありません。
しかし、プラグインを更新する際に再び500エラーを起こしてしまわないようにするためには、本番環境とは別にテスト環境を設けておくと効果的です。
つまり、サイトの複製を作っておくということです。
テスト環境で、プラグインのダウンロード状況などを本番同様に用意しておき、プラグインの更新案内が表示された際にはテスト環境で先に更新するようにしておくと、プログラムに何らかのエラーが起こった際にも本番環境は影響を受けません。
(どのプラグインでエラーが生じるかわからないので、できるだけ同じ環境になるようにテスト環境を整えておくことが望ましいです)
また、プラグインの更新を行う際にWordPressのサポートフォーラムもチェックをすれば不具合の情報が確認できるかもしれません。
まとめ
- プラグイン更新のときに「500 Internal Server Error」になったら、更新されたプラグインのプログラムに何らかの記述エラーが生じていることによって発生している可能性が高い。
- FTPソフトなどを使用してWordPressのプラグインにログインし、ディレクトリ名を変更して無効化することにより解消できる可能性が高い。
- 無効化したプラグインは、提供者側でエラーが解消されるのを待ってから再び更新をおこなうことにより利用できるようになる。