ある日突然、「このページは動作していません」というメッセージが表示され、サイトが見れなくなるどころか、ワードプレスへのログインもできなくなってしまいました。結果から言うと、原因はSSL化のプラグインでした。
.htaccess ファイルの編集と、さくらサーバー独自のプラグインに変更することによってリダイレクトループから脱出することができました。その方法をご説明します。
ある日突然表示された「ERR_TOO_MANY_REDIRECTS」
同じサーバーで4サイト運営していますが、表示されなくなったのはひとつのサイトだけ。サーバーの障害ならば全てのサイトが落ちそうなもんですが、このサイトだけっていうところが疑問でした。
特に何かしたわけでもないのに、ある日突然サイトが表示されなくなりました。「このページは動作していません」「ERR_TOO_MANY_REDIRECTS」などが表示されるだけで、サイトを見ることができません。
この状況になって困っている人は多いのか、調べると対処法がたくさん出てきました。
- 端末を再起動してみる。
- クッキーを削除してみる。
- ブラウザを変えてみる。
- 別の端末からアクセスしてみる。
リダイレクトエラーの原因はSSL化のプラグインだった
リダイレクトエラーと出た時点で、SSL化が原因であることはなんとなく想像はできましたが、なんせワードプレスにさえログインできないので、レンタルサーバーで何かしなければダメそうです。
私が使っていたのは、「Really Simple SSL」というプラグイン。さくらインターネットサーバーには「SAKURA RS WP SSLWordPress」というプラグインがありましたが、さくらのサーバー上でしか使えないものでした。
サーバーを変える予定はなかったのですが、「Really Simple SSL」の方が無難かな?と思ってこちらを使っていましたが、どうやらこのプラグインの不具合のようでした。
.htaccess ファイルの編集で解決
さくらのサポートに問い合わせをしたところ、.htaccessの記述に問題があるとの返答がきました。 X-Forwarded-Protoヘッダーを利用しての常時SSL化は、さくらのレンタルサーバにおいては動作保証をしていない記述であるとのこと。
私が有効化した常時SSL化を行うプラグイン。「Really Simple SSL」が記述した内容と考えられますが、これが原因で正しく動作しなくなった可能性があるとのことでした。
.htaccess ファイルの編集はサーバーコントロールパネルから
webサイト/データ > ファイルマネージャーでサーバーコントロールパネルにいけますので、そこから問題の発生しているサイトのフォルダをクリック。そこに.htaccessファイルがあるのでそれをダブルクリックすると、左下にプレビューが現れます。
プレビューの横にある鉛筆のマークをクリックすると編集できます。編集したら「保存」をクリックして完了です。
変更した内容
————————————————————-
RewriteCond %{HTTP:X-Forwarded-Proto} !https
————————————————————-
この部分の記述を、以下のように変更。
————————————————————-
RewriteCond %{HTTPS} !on
————————————————————-
これで、ひとまずリダイレクトエラーから脱出することができました。サイトへのアクセスが可能になったところで、ワードプレスにログインし、「Really Simple SSL」を無効化しました。
まとめ
プラグインを更新した瞬間に不具合が起きることは度々ありました。今回は4サイトあるうちの一つだけに、リダイレクトエラーが起きたわけですが、考えたら他の3つのサイトは、しばらく更新していないサイトでした。(ログインもしていなかった)
そのため、プラグインを更新していなかったので、結果無事だったのかな?と推測しています。
「Really Simple SSL」は便利なプラグインでしたが、今回はさくらの提供しているプラグインに変更しました。他社サーバーに移行する際は忘れずにSSL化をしないといけないのはちょっと不便ですね。