こんにちは。KYOです。
今回は、WordPressで500エラーが発生した時のお話です。
先日、WordPressにログインしたところ、「500 Internal Server Error」というメッセージが表示されてしまい、ログインできなくなってしまいました。
これまでにWordPressにログインできなくなる事態は経験していましたが、その時は「404」というエラーコードであり、今回のように500番台のエラーは初めての経験でした。
現在では既に問題は解消されていますが、同じ症状で悩んでいる方の一助になるべく、今回は500 Internal Server Errorの原因と解決方法について解説いたします。
●WordPress|”更新に失敗しました。現在オフラインのようです。”の原因
●WordPress|”公開に失敗しました。返答が正しいjsonレスポンスではありません。”の原因
●WordPressの画面が真っ白で表示されないエラーが起きた時の対処法
500エラーWordPressにログインできない原因|私の場合
私の場合、500 Internal Server Errorが出現した原因はWordPressとPHPのバージョンが適合していないことでした。
思い返してみれば、WordPressを最新バージョンにアップデートした直後に500 Internal Server Errorが出現したため、WordPressをアップデートしたことで、サーバーのPHPと適合しなくなっていたのです。
そのため、PHPのバージョンを変更することで500 Internal Server Errorを解決することが出来ました。
私はwpXというサーバーを使用しているため、本記事ではこれを基準にPHPを変更する方法について記載しております。
ただ、どのサーバーでも大枠の手順は同じだと思われるため、おおよその方法は以下の説明をご参照ください。
まず、wpXサーバーにログインし、「インストール済WordPress一覧」をクリックし、500エラーが発生しているWebサイトの「設定」を押します。
ページが変遷したら「各種管理設定」にある「PHPバージョン切替」の「設定する」を押下します。
すると、そこには「現在のバージョン」と「変更後のバージョン」という項目が表示されているはずです。
現在のバージョンでは不具合を起こしているため、これを変更するわけですが、基本的には(推奨)と記載のあるバージョンに変更すれば問題ないはずです。
もし(推奨)と記載のバージョンに変更しても500エラーが解消しないのであれば、それ以外のバージョンを試してみて下さい。
ただ、変更するにしても基本的には最新バージョンや直近のバージョンで事足りるはずで、過去のバージョンにダウングレードする必要はないと思われます。
過去のバージョンにダウングレードすると、セキュリティ面などで脆弱性を孕む可能性があるため、この点は予め注意が必要です。
その他の原因
私の場合はWordPressとPHPのバージョンが適合していないために500 Internal Server Errorが発生してしまいました。
ただ、500 Internal Server Errorが発生する原因は他にもあり、例えば、以下の要因が挙げられていました。
(2)WordPressとプラグインの不適合
(3)サーバー側の障害
(4)サーバーに高負荷が発生している
一つずつ解説していきます。
.htaccessに異常がある
「.htaccess」というファイルを編集した後に500エラーが発生するようになった場合、コードの記述ミスが考えられます。
この場合、.htaccessに記述したコードを削除すれば、500エラーは解消されます。
.htaccessを編集する手順は、まずサーバーにアクセスして当該Webサイトの「設定」をクリックします。
ページが変遷したら「FTPアカウント設定」の「設定する」をクリックし、メニューの項目にある「設定変更」を押下して下さい。
すると「FTPアカウント設定」というページが開くため、「利用設定」をONにし、「全てのファイル・フォルダにアクセスする」に☑を入れて「設定変更(確認)」をクリックします。
ページが切り替わったら、「設定編集(確定)」を押せば下準備は完了です。
以上の行程を終えた後は再び最初のページまで戻り、今度は「ファイナルマネージャ」にログインします。
ファイナルマネージャにログインすると、そこにはWordPressに格納されているファイルとフォルダが一覧で表示されています。
この中から.htaccessの項目を探し、左端にある□に☑を入れて、右側にある「編集」をクリックします。
これで.htaccessのファイルが展開するため、誤って記述したコードを削除すれば500エラーは解消されます。
なお、注意点としてファイルを編集したら必ず「保存する」のボタンを押下して下さい。
これをしないと編集した情報が反映されないため、500エラーが出現し続けてしまいます。
WordPressとプラグインの不適合
プラグインを更新したり、新しいプラグインをインストールした場合、これがWordPressに適合せず500エラーを起こす場合があります。
この場合、問題のプラグインを無効化または削除することで500エラーは解消されます。
500エラーが発生している間は管理画面に入れないため、先ほどの.htaccessと同様に、こちらもサーバー側からの操作で無効化または削除することになります。
ファイナルマネージャにログインすまで手順を同じであるため、ここではファイナルマネージャにログインした後から説明します。
ファイナルマネージャにログインした後、「wp-content→plugins」の順番で進んで下さい。
pluginsを開くと、インストール済のプラグインが全て表示されるため、当該プラグインの左端にある□に☑を入れて、「ファイルの削除」を押せばプラグインを削除することが出来ます。
また、プラグインを無効化したい場合は、左端の□に☑を入れた後、「ファイル名の変更」を押して「〇〇(プラグイン名)_bk」などのファイル名に書き換えます。
こうすることで当該プラグインを一時的に無効化することが出来ます。
不具合を起こしているプラグインに心当たりがあれば「ファイルの削除」を選択し、どのプラグインが問題なのか分からない場合は全てのプラグインに☑を入れて「ファイルの編集」を行い、一時的に無効化してみるといいでしょう。
プラグインが原因で500エラーが起きている場合、上記の操作でWordPressの管理画面に入れるようになります。
どのプラグインがトラブルの原因になっているのか分からなければ、一つずつプラグインを有効化していき、原因のプラグインを特定して下さい。
サーバー側の障害
500 Internal Server Errorは「サーバーの内部で問題が発生している」という意味であるため、その原因は必ずしも利用者にあるわけではありません。
そのため、サーバー側で何らかの不具合が発生してしまい、それが原因であなたのWordPressにアクセスできなくなっているという可能性も十分にあります。
ただ、サーバー側に問題が起きている場合、ユーザー側から対策を講じることは出来ないため、エラーが解消されるまで待つしか選択肢はありません。
契約しているサーバーにアクセスすれば、「お知らせ」などの項目にエラーの発生について言及している文章が掲載されているはずです。
サーバーに高負荷が発生している
Webサイトにアクセスが集中した場合、サーバー側が高負荷を検知して一時的にアクセスを制限することがあります。
ただ、この時は「500 Internal Server Error」ではなく「503 Service Unavailable」というエラーメッセージが表示されます。
共に500番台のエラーですが、500と503ではエラーの意味が異なるため注意が必要です。
一時的にアクセスが制限された場合、サーバー側からその旨のメールが届くはずです。
制限解除の方法についてはその通知に記載されているので、そちらを参考にして対策を講じて下さい。
コメント