302 Moved TemporarilyエラーでURLが無限ループ!原因は、WordPressのプラグインの競合だった

WordPressにログインした時、302エラーが出てURLがリダイレクトループを起こしたときの初めに試す対処法です。ページが一時的に別の場所に移動してしまった302エラーは、元に戻さない限りhttp://ドメイン/以降リダイレクトループ状態のまま。

URLがすごく長くなって、ブログの記事どころか管理画面にすら入れなくなったんです。クロームのエラーメッセージをみると内部サーバーエラーが出てるので、エラーが起きた時間をサーバーに連絡してエラーログを調べてもらいました。

エラーの原因はプラグインの競合で、それを特定するのに2日弱。その2日間何もしないで、ブログが公開できないって困りますよね。試す価値あるのがプラグインを一気に切ることです。

運よくサブドメインで構築したテスト環境でエラーが起きたからエラー当時のブラウザのエラー表示の状況も載せてるので、簡単にプラグインを外す手順と一緒に参考にしてくださいね。

302 Moved TemporarilyでURL∞ループ

スポンサーリンク

302 Moved Temporarilyって何?

ブログを表示させると同時にサーバーがHTTPステータスコードって言うものを画面上では見えないところで出してるんですね。コードは、200番台~500番台など良く見聞きします。その300番台はリダイレクト(転送)を意味します。

302番は、一時的にリダイレクトされ別のページを表示させてる状態なんです。

今回の症状はURLがメチャクチャ長くなって、別のページに転送させてるわけではないのに無限ループになってしまうエラーでした。

URLがリダイレクトループ!文字化けして長くなり500内部サーバーエラーを出したのが原因

URLである『http://ドメイン/ディレクトリ?redirect_to=』のコロン『:』スラッシュ『/』イコール『=』が文字化けで『%3A%2F%2F』と変換してリダイレクトをくり返すうちに、%の後ろに2525が入って無限ループを起こしてました。

http%25・・・253A%25・・・252F%ドメイン%2525・・・25252Fディレクトリ%25・・・253Fredirect_to%25・・・253Dhttp%・・・『2525』が長くなって無限ループ。。

エラーが起きたとき、似たような機能をするプラグインが競合してしまったんです。リダイレクトが更にリダイレクト・・・と、リダイレクトループをおこし500 Internal Server Error(内部サーバーエラー)となってしまいました。

500 Internal Server Errorとは
HTTPステータスコード500番台はページを表示しようとした際、サーバー内部がのなんらかの原因で表示できない状態です。500番は、『サーバー内部のエラー』になります。

似た仕様のプラグインが何かのきっかけで競合して『302リダイレクト』を引き起こして、URLが無限にループした結果、ページを表示できなくった。ちょっと複雑ですね。そのときのブラウザの表示は次にスクリーンショットで置いておきますね。

エラーが出たクロームとIE、Firefoxのブラウザ表示

3つの環境でエラーの表示のしかたは、それぞれ違って下記のとおりです。内容を確認してみてくださいね。

クロームでエラーが出たときのページ

クロームでの表示は2段階で変わります。はじめ下記のようにシンプルな表示に。

ドメイン ページは機能していません

ドメイン でリダイレクトが繰り返し行われました。

chome-first

次にエラーメッセージになり『302 Moved Temporarily』と表示されます。

Moved Temporarily

The server encountered an internal error or misconfiguration and was unable to complete your request.

Please contact the server administrator, admin@paperboy.co.jp and inform them of the time the error occurred, and anything you might have done that may have caused the error.

More information about this error may be available in the server error log.

Additionally, a 500 Internal Server Error error was encountered while trying to use an ErrorDocument to handle the request.

chome-e

翻訳バージョンは、『302は一時的に移動します』とタブに表示され本文は下記のとおり。

一時的に移動

サーバーが内部エラーや設定ミスが発生したため、リクエストを完了できませんでした。

、サーバー管理者に連絡admin@paperboy.co.jpとエラーが発生した時間を通知し、エラーの原因となった可能性があることを行っている可能性があります何でもしてください。

このエラーの詳細については、サーバーのエラーログに入手可能です。

リクエストを処理するためのErrorDocumentを使用しようとしたときにまた、500内部サーバーエラーエラーが発生しました。

chome

Firefoxでの環境

上部には「ページ読み込みエラー」本文は書きの通り。

ページの自動転送設定が正しくありません

このアドレスへのリクエストに対するサーバの自動転送設定がループしています。

Cookie を無効化したり拒否していることにより、この問題が発生している可能性もあります。

firefox

IEでの環境のエラー

このページは表示できません
  • Web アドレス http://ドメイン が正しいか確かめてください。
  • 検索エンジンでそのページを探してください。
  • 数分待ってから、ページを最新の情報に更新してください。

ie

こんな表示になってる状態だったんです。

エラーを確認したら、レンタルサーバーに連絡

エラーが起きた時間帯と状況、上述のエラーメッセージをレンタルサーバーに問い合わせるとロリポップでは48時間以内に対応してくれますよ。

私がサーバーに教えてもらってやったプラグインの停止方法。それでもエラーが出たので更にやったこと。1日半強、復帰出来ないのはキツいでしょうから、簡単な対処法を試してくださいねぇ。念のためpluginsをバックアップしておくと安心ですよ。

 プラグインを外すのが1つの簡単な対処法

一度に栓を抜こうとするイメージ。栓されたボトルが並ぶ画像。

プラグインの競合の可能性を考えて、プラグインを強制的に外せば元に戻ります。方法は下記の通り。レンタルサーバーのFTPでプラグイン名を変更して、強制的に停止する方法です。

  1. FTPで、pluginsフォルダ名を_pluginsにして保存
  2. 改めて管理画面にログインする
  3. 管理画面のプラグインが全停止してるか確認
  4. FTPより、フォルダ名を元に戻しpluginsにする
  5. 管理画面のプラグインが全て外れてる状態に
  6. 該当プラグインが解ってれば、削除して再インストールして完了

となります。でも今回は停止して、再度ログインしたら404ページになってしまってログイン出来なくなってしまいました。

※詳しい手順が不明なら、下記リンクの目次先でロリポップFTP内の画像付き説明してますから、参考にしてくださいね。

参考プラグイン競合の対処法!(目次)管理画面に入れない場合:サーバーのFTPを直接触って、プラグインを削除する2つの方法

管理画面に入れない!サーバー側FTPで該当プラグインを削除する

男性がビンの栓を抜く画像

プラグインを停止するだけで管理画面に入れると思ってたら404ページを返して入れない状態。競合したのはログイン画面の変更をするサイトガードと、ログインしてない状態で訪問したら、ログインページにリダイレクトするプラグインです。

似た役目のプラグインがあれば削除して確認するのも手だけどプラグインがたくさんあれば大変です。サーバーが早く連絡くれることを願うか、バックアップをとって1つずつ削除するかでしょうかぁ。。

競合した2つのプラグインのメドがついてたら、サーバーFTPで該当のものを削除して再度ログインを試しすのも良いかも。

ポイント

全てのプラグインを停止しようと強制エラーをおこしたのに、それ自体無効、再度ログインしても404ページを返す場合。該当プラグインを直接削除すれば簡単にエラーが解除され管理画面に入れました。

※詳しい削除方法が不明なら上と同じ下記リンクで確認してください。

参考プラグイン競合の対処法!(目次)管理画面に入れない場合:サーバーのFTPを直接触って、プラグインを削除する2つの方法

サーバーFTPでプラグイン削除後の管理画面内のメッセージには下記のエラーが表示されスクリーンショットは下の通り。

プラグイン siteguard/siteguard.php はエラーにより停止しました。エラー: プラグインファイルが存在しません。

プラグイン wp-nologin-redirect/nologin-redirect.php はエラーにより停止しました。エラー: プラグインファイルが存在しません。

WordPress管理画面のエラーメッセージ

必要なプラグインであれば、再度インストールしなおせば元に戻りますよ。ただ、また競合で同じエラーか似たエラーを起こす可能性がありますけど、必要なので私は再度どちらもインストールして使うことにしました。

どれを削除すれば良いのかわからない時、ダメ元で試したいこと

プラグインを停止するだけで、エラーが解除されると思ってたら削除しないと解除されなくって、、他にエラーの対処法があるんですね。試してみれば良さそうなものをメモ代わりにピックアップしておきます。

ブログ画面が真っ白なときに有効な真っ白になったブログを復元!エラーコードを表示させる2つの方法はもしかしたら、どのプラグインのエラーかわかる可能性が無きにしもあらずで試す価値はあると思われます。

ロリポップでしたら、PHP設定の変更:php.ini設定ですぐ表示(デフォルトが表示)されますので簡単度が高いです。

※php.iniがないサーバーで同じ機能はデバックモードでエラー表示する方法。簡単だけど失敗しちゃダメな重要ファイルさわるのと工程が多いのがネックかも。。

突然のプラグインの競合の場合なら、試す価値ありそうと思うのは下記。

  1. pluginsファイルをバックアップする
  2. pluginsファイルを丸々削除
  3. エラーが解消できてるか確認
  4. pluginsをバックアップからの復元
  5. 全てのプラグインを有効化
  6. サーバーからどのプラグインの競合か教えてもらって、また対応

個人的に試してみたい方法ですけど、どうでしょうか!?

 さいごに

まだまだおかしいなぁ・・って思うところがあったのに、エラーからの復元を早々にやってしまって。。ローカルでのエラーだったからもっと試せば良かった感満載です。

ログイン系でサイトガードの設定、ログインURL変更して.htaccessにログインURLの5桁の数字に反映されるログインURLと、無限ループでリダイレクトされたURL先と違ってて。正しいアドレス入れてもダメだったのも気になります。参考まで。私メモ。

404ページが出た原因がそれ以外にあるかも知れないのでリンク置いときますねっ。

参考WordPress ログインできない 404 Not Foundと表示される|Wpdoctor

おまけ★URLが文字化けしたときの特殊コードを読む方法★

URLの無限ループでもみられたURLの文字化け。あれ何かいてるの?ってなりますよね。日本語とかローマ字じゃなかったら、『%3A%2F%2F』になっちゃうとか、URLが文字化けされるのは、ローマ字以外が特殊コードに変換されるからなんです。

  • 『:』は、『%3A』
  • 『//』は、『%2F%2F』
  • 『か』は、『%e3%81%8b』など

URLの文字化けを『文字化け前』の状態に戻せすのに、下記サイトの『デコード』に文字化けした文字やURLをコピペすれば解りやすくなりますよ。

文字化けした文字を読む方法

『デコードする』をクリックすると、下記画像のように何を書いてるか解らない特殊文字が読めて便利!

特殊文字が読めるデコード

LINKURLエンコード・デコードフォーム|TAG<index>

上記の長い特殊文字何かいてるの??ってとき、デコードしたら『かうたっく』何だねっ!って解るって面白いですね!ってマニアック入っちゃってますねぇw

では!
『%e3%81%8b %e3%81%86 %e3%81%9f %e3%81%a3 %e3%81%8f』かうたっくでした!

書いた人:かうたっく

何も知らない初心者ですが、WordPressでブログを始めました。 ブログの技術系でつまずいたエラーを経験したことからエラー関連を、初心者が初心者に向けて分かりやすい言葉で書いてます★子どもの喘息様気管支炎や、幼い子どもとの生活ページなどよく読まれる雑多ブログを運営中^^♪ご意見、感想、質問はお問い合せよりお待ちしています。

Twitterフォロー