WordPressサイトのERR_TOO_MANY_REDIRECTSを修正する方法

11月 13, 2021
admin

Kinstaでは多くの異なるエラーを目にしますが、ERR_TOO_MANY_REDIRECTS(別名リダイレクトループ)は定期的に見るエラーのうちの1つです。 一般的に、これはWordPressサイトでの最近の変更、サーバーでのリダイレクトの誤った設定、またはサードパーティサービスでの誤った設定の後に発生します。 しかし、このエラーは簡単に修正できますのでご安心ください。

このエラーを修正し、サイトを再開する方法について、以下の推奨事項をご確認ください。

ERR_TOO_MANY_REDIRECTS エラーとは?

ERR_TOO_MANY_REDIRECTS の理由は、ほぼそのとおりです。 基本的にサイトは行き詰っており(URL 1 が URL 2 を指し、URL 2 が URL 1 に戻る、またはドメインが何度もリダイレクトしているなど)、他のエラーとは異なり、これらはほとんど自己解決しないため、おそらく修正するための対処が必要になります。

Google Chrome

Google Chrome では、このエラーは ERR_TOO_MANY_REDIRECTS(以下に示すように)または This webpage has a redirect loop problem として表示されます。

This page isn’t working. domain.com redirected too many times.

ERR_TOO_MANY_REDIRECTS in Google Chrome

ERR_TOO_MANY_REDIRECTS in Google Chrome

(Chrome の ERR_CACHE_MISS エラーを修正する方法 を参照してください。).Google Chrome では、ERR_TOO_MANY_REDIRECTS と表示されます。

Mozilla Firefox

Mozilla Firefox では、次のように表示されます。 ページが正しくリダイレクトされていません (以下に表示)。

domain.com への接続時に、エラーが発生しました。 この問題は、Cookie を無効にしたり、拒否したりすることで発生することがあります。

ERR_TOO_MANY_REDIRECTS in Firefox

ERR_TOO_MANY_REDIRECTS in Mozilla Firefox

Microsoft Edge

Microsoft Edge で、このページは今すぐ動作しませんと表示されます(以下のとおりです)。

ERR_TOO_MANY_REDIRECTS in Microsoft Edge

ERR_TOO_MANY_REDIRECTS in Microsoft Edge

Safari

Safari では、Safari Can’t Open the Page として示されます (以下のようになります)。

“domain.com” を開こうとすると、リダイレクトが多発しました。 これは、リダイレクトされて別のページを開き、そのページが元のページを開くためにリダイレクトされるようなページを開いた場合に発生する可能性があります。

ERR_TOO_MANY_REDIRECTS error in Safari

ERR_TOO_MANY_REDIRECTS error in Safari

このエラーを修正するための推奨事項と確認事項です(よく見られる理由順に並べました)。

  • その特定のサイトの Cookie を削除する
  • WordPress サイト、サーバー、プロキシをクリアする。 ブラウザのキャッシュ
  • リダイレクトループの性質を調べる
  • HTTPS設定を確認する
  • 第三者を確認する。
  • WordPress サイトの設定を確認する
  • Temporarily disable WordPress plugins
  • Check redirects on your server

Delete Cookies on That Specific Site

実際、Google と Mozilla は、エラー表示の右下に「クッキーをクリアしてみる」よう勧告しています。” Cookieには、ERR_TOO_MANY_REDIRECTSエラーの原因となる不正なデータが含まれていることがあります。

Cookie がサイトや他の設定に「ログイン」状態を保持するという事実のため、問題があるサイトの Cookie を単に削除することをお勧めします。

Google Chromeで特定のWebサイトのCookieを削除するには、以下の手順に従います。

Step 1

Google Chromeで右上隅にある三つの小さなドットをクリックします。 次に「設定」をクリックします。

クロームの設定

クロームの設定

Step 2

下にスクロールして「詳細設定」をクリックします。”

クロームの詳細設定

クロームの詳細設定

ステップ3

次に「コンテンツの設定」をクリックします。”

クロームのコンテンツ設定

クロームのコンテンツ設定

ステップ4

「クッキー」をクリックします。”

Chrome Cookies

Chrome Cookies

Step 5

次に「すべてのクッキーとサイトデータを参照する」をクリックします。”

Chrome see all cookies

Chrome see all cookies

Step 6

ERR_TOO_MANY_REDIRECTS エラーを発生させているサイト(ドメイン)を検索してください。 その後、そのドメインのコンピュータに現在保存されているCookie(s)を削除します。

Delete cookie in Chrome

Delete cookie in Chrome

Clear Server, Proxy, and Browser Cache

Redirect Loop はキャッシュできる応答なので、必要に応じて WordPress サイト、サーバー、サードパーティ製のプロキシサービス、さらにユーザーのブラウザで常にキャッシュをクリアしてみることが推奨されます。

Clear WordPress Site Cache

リダイレクト ループの種類によっては、WordPress 管理ダッシュボードにまだアクセスできる可能性があります。 この場合、キャッシュ プラグインの設定内で、簡単にキャッシュをクリアすることができます。 WordPressのキャッシュをクリアする方法については、以下のリンクをご参照ください。

WordPress のインサイダー情報を毎週お届けするニュースレターで、20,000人以上の仲間に入りましょう。

今すぐ購読

  • Cache Enablerでキャッシュをクリア
  • W3 Total Cacheでキャッシュをクリア
  • Super Cacheでキャッシュをクリア

Kinstaクライアントなら、WordPress管理ツールバーからキャッシュを容易にクリアすることが可能です。

Clear Kinsta cache from WordPress admin

Clear Kinsta cache from WordPress admin

Clear Server Cache

WordPress adminにアクセスできない場合、多くのWordPressホストにはWordPressサイト上のキャッシュをクリアする独自のコントロールパネルツールが用意されています。

Kinstaのクライアントであれば、MyKinstaのダッシュボード内からWordPressのキャッシュを手動でクリアすることができます。 自分のサイトをクリックし、ツールにクリックし、「キャッシュをクリア」ボタンをクリックするだけです。

Clear WordPress cache

Clear WordPress cache

Clear Proxy Cache

CloudflareやSucuriなどの第三者のリバースプロキシサービスを使っている場合、その側のキャッシュをクリアすることも有効であると思われる。

Cloudflare

Cloudflare キャッシュを消去するには、ダッシュボードにログインして、「キャッシュ」をクリックし、「すべてを消去」をクリックします。”

Purge cache

Sucuri

Sucuri キャッシュを消去するには、ダッシュボードにログインし、「パフォーマンス」に移動して「キャッシュをクリア」をクリックします。”

Clear Sucuri cache

Clear Sucuri cache

Clear Browser Cache

もし、キャッシュをクリアせずにブラウザキャッシュに原因があるかどうか確認したい場合は、シークレットモードで常にブラウザを開いて確認することが可能です。 または、別のブラウザーをテストして、ERR_TOO_MANY_REDIRECTS エラーがまだ表示されるかどうかを確認します。

Chrome をシークレット モードで開く

シークレット モードで Chrome を開く

ブラウザーのキャッシュが原因だと判断したら、それをクリアすることができます。 以下は、さまざまなブラウザで行う方法です。

  • すべてのブラウザで単一のページを強制的に更新する方法
  • Google Chrome のブラウザ キャッシュをクリアする方法
  • Mozilla Firefox のブラウザ キャッシュをクリアする方法
  • Safari のブラウザ キャッシュをクリアする方法
  • How to Clear Browser Cache for Safari Internet Explorer のキャッシュをクリアする方法
  • Microsoft Edge のキャッシュをクリアする方法
  • Opera のキャッシュをクリアする方法

Determine nature of Redirect Loop

キャッシュをクリアしてもうまくいかない場合、どうすればよいですか。 リダイレクトループの原因を突き止めることができるかどうかを確認します。 この無料のオンライン・リダイレクト・チェッカー・ツールは、何が起こっているのかをさらに詳しく分析するのに役立ちます。 これは、cURL を介して行うこともできます。

たとえば、以下のサイトでは、自分自身に戻る 301 リダイレクトのループがあり、これが誤ったリダイレクトの大きな連鎖を引き起こしています。 すべてのリダイレクトを追跡して、それ自体にループしているかどうか、あるいは HTTP から HTTPS へのループであるかどうかを判断できます。

Too many redirects

Too many redirects

The Redirect Path Chrome 拡張機能も非常に便利で、サイト上で発生しているすべてのリダイレクトを把握できます(特定の URL またはページです。

Redirect Path extension

Redirect Path extension

Check Your HTTPS Settings

もうひとつ確認しておくべきことは、HTTPS の設定です。 ERR_TOO_MANY_REDIRECTS は、WordPress サイトを HTTPS に移行したばかりのユーザーが、移行を完了しなかったか、何か間違った設定をしている場合に多く見受けられます。

MyKinsta はプロフェッショナル向けのワードプレスダッシュボードです。

Don’t Force HTTPS Without an SSL Certificate

This is far most common reason we see on regular basis.This is a lot of the past to a lot of a lot of a lot to a lot of a lot of a lot of a lot to are. 最初に SSL 証明書をインストールせずに、WordPress サイトを HTTPS で読み込むように強制すると、即座にリダイレクトのループに陥ります。 これを解決するには、WordPress サイトに SSL 証明書をインストールするだけです。

SSL チェックを実行することもお勧めします。 SSL/TLS証明書は、メインの証明書だけでなく、中間証明書と呼ばれるもの(チェーン)もインストールされている必要があります。

Qualys SSL Labsの無料のSSLチェックツールの利用をお勧めします。 これは非常に信頼性が高く、証明書を検証する際にすべてのKinstaクライアントに使用しています。 SSLチェックツールに向かい、ホスト名フィールドにお客様のドメインを入力し、”送信 “をクリックするだけです。 また、ご希望であれば、公開結果を隠すオプションを選択することもできます。

SSL check

SSL test

Don’t Use an SSL Plugin, Update your Hard-coded Links

There are some free SSL WordPress plugins, such as Really Simple SSL plugin that will help you automatically redirect to HTTPS…あなたのサイトの SSL/TLS 設定をスキャンするには、1~2分かかるかもしれません。 しかし、サードパーティのプラグインは常に問題や互換性の問題の別の層を導入することができるので、我々は恒久的な解決策として、この方法をお勧めしません。 一時的な解決策としては良いのですが、ハードコードされた HTTP リンクを本当に更新すべきです。

WordPress で検索と置換を行う 4 つの簡単な方法を紹介した素晴らしいチュートリアルを用意しています。

Check HTTP to HTTPS Redirects on Server

It could be very well that perhaps the HTTPS redirect rules on your server was misconfigured.Net Framework 2.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.1.0.0.0.1.0.

Redirect HTTP to HTTPS in Nginx

Nginx を使用している場合、Nginx 設定ファイルに次のコードを追加することにより、すべての HTTP トラフィックを簡単に HTTPS にリダイレクトすることができます。

server { listen 80; server_name domain.com www.domain.com; return 301 https://domain.com$request_uri; }

Kinsta では、すべての人に Nginx を使用しています。 素晴らしいニュースは、このことを心配する必要がないことです。 リダイレクトを追加する必要がある場合は、サポートチケットを開いて、どのドメインにリダイレクトする必要があるかをお知らせいただくだけです。

Redirect HTTP to HTTPS in Apache

If your web server running Apache, you can easily redirect all of HTTP traffic to HTTPS by adding the .htaccess code to your .htaccess file. これは、Apache で動作する WordPress のリダイレクトに推奨される方法です。

RewriteEngine OnRewriteCond %{HTTPS} offRewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} 

Check For Too Many HTTPS Redirects

Perhaps you simply have too many HTTPS redirects.これは、HTTPS のリダイレクトが多すぎるということです。 Patrick Sexton 氏の Redirect mapper ツールを使用すると、サイトが使用しているリダイレクトの数を簡単に確認することができます。 以下は、正しく設定されていないリダイレクトの例で、リダイレクトマッパーを使用すると簡単に見つけることができます。

redirects not setup correctly

Redirects

Check Third-Party Services

ERR_TOO_MANY_REDIRECTS は、しばしば Cloudflare などのリバースプロキシ サービスが原因で発生することがよくあります。 これは通常、Flexible SSL オプションが有効で、WordPress ホストにすでに SSL 証明書がインストールされている場合に発生します。 なぜでしょうか? なぜなら、フレキシブルを選択すると、ホスティングサーバーへのすべてのリクエストはHTTPで送信されるからです。 この問題を解決するには、Cloudflare Crypto の設定を Flexible から Full または Full (Strict)のいずれかに変更する必要があります。 Kinstaクライアントの場合、Cloudflareを使用しながらSSL証明書をインストールする方法についての手順も確認してください。

Cloudflare full

Set Cloudflare crypto level to full

You can use its Always Use HTTPS page rule to redirect all users to HTTPS without creating a loop.Net. Cloudflareで気をつけなければならないもう一つのことは、転送URLリダイレクトルールです。 ドメインが自分自身を宛先として指すようなリダイレクトを作成しないように注意してください。

StackPath を使用している場合、「Origin Pull Protocol」というオプションがあり、HTTPSのみに設定する必要があります。

Using Cloudflare DNS Only

CloudflareのDNSだけを使用したい場合、そしてプロキシ/WAFサービスではない場合は、あなたのDNSレコードが「DNS Only」に設定されていることを確認する必要があります。 雲は “オレンジ “ではなく、”グレー “で表示されるようになります。 Cloudflareコントロールパネルの「DNS」タブで設定します。

Cloudflare DNS only

Cloudflare DNS only

Check Your WordPress Site Settings

もう一つ確認してほしいのがWordPressサイトの設定です。 2 つの異なるフィールドが正しく設定されているか、間違ったドメインを指していないか、または不一致でないかを確認する必要があります。 時々、人々はホストを移行、またはドメインを変更し、これらはあなたがそれに気づくことなく変更されることがあります。

  • WordPressのアドレス(URL)。 あなたのblog.
  • サイトアドレス(URL)に到達するためのアドレスです。
    WordPress address

    WordPress address

    WordPress ダッシュボードにアクセスできないことがほとんどですが、WordPressのコアファイルのアドレスは一致しているはずです。

    wp-config.php ファイルは、通常 WordPress サイトのルートにあり、FTP、SSH、または WP-CLI を介してアクセスできます。 WP_HOME と WP_SITEURL をハードコードするには、ファイルの先頭で次のコードを入力し、ドメインを反映するように値を変更するだけです。

    define('WP_HOME','https://yourdomain.com');define('WP_SITEURL','https://yourdomain.com');

    以下は、その後の wp-config.php ファイルがどのように見えるかの一例です。php ファイル

    または、管理ダッシュボードにアクセスせずに WordPress の URL を変更できる 2 つの方法があります。

    • Change WordPress URL Directly in Database
    • Change WordPress URL With WP-CLI

    一度手動で設定したら、あなたのサイトを参照してリダイレクトループが修正されたかどうかを確認することができます。

    マルチサイト

    マルチサイトでドメインを変更する場合、wp_blogsテーブルも確認するようにしてください。 検索と置換を間違えて、無限リダイレクトのループを引き起こす人を見たことがあります。 これは、ネットワーク サイトがサブサイトと一致しないためです。

    wp_#_options: 各サブサイトには、wp_blogs テーブルの blog_id に対応する一連のテーブルがあります。

    Temporarily Disable WordPress Plugins

    WordPress に関しては、すべての WordPress プラグインを一時的に無効にすることが、問題を発見する手っ取り早い方法です。 たとえば、Redirection や Yoast SEO premium などのプラグインを使用すると、リダイレクトを実装することができます。 これらのプラグインの設定や更新が、サーバーにすでに設定されているリダイレクトと競合し、リダイレクトループが発生することがあります。

    プラグインを無効にしただけでは、データを失うことはありません。 ほとんどの場合、WordPress の管理画面にアクセスできないので、サーバーに SFTP でログインし、plugins フォルダを plugins_old などの名前に変更する必要があります。

    SFTP rename plugins folder

    SFTP rename plugins folder

    うまくいったら、今度はプラグインを一つ一つテストする必要があります。 プラグイン フォルダーの名前を「plugins」に戻し、その中の各プラグイン フォルダーの名前を、見つかるまで 1 つずつ変更します。

    Rename plugin folder

    Rename plugin folder

    Check Redirects on Your Server

    HTTPS Redirects on your Serverに加えて、追加の Redirects setup wrong がないことをチェックして確認するとよいだろう。 たとえば、それ自体に戻る1つの間違った301リダイレクトは、あなたのサイトをダウンさせることができます。

    Apache .htaccess ファイル

    Kinsta は Nginx しか使用していませんが、Apache を実行している WordPress ホストを使用している場合、.htaccessファイルに間違ったルールがある可能性が非常に高くなります。

    まず、FTPまたはSSHでサイトにログインし、.htaccessファイルを.htaccess_oldにリネームしてください。

    Rename .htaccess file

    Rename .htaccess file

    通常このファイルを再作成するには、WordPressでパーマリンクを再保存すればよいのですが、今回は、パーマリンクの再保存は行いません。 しかし、ERR_TOO_MANY_REDIRECTS エラーの最中であれば、ほとんどの場合 WordPress 管理画面にアクセスできないので、これは選択肢にはなりません。 そこで、.htaccessファイルを新規に作成し、以下の内容を入力します。 それをサーバーにアップロードしてください。 以下はデフォルトの設定を使用しています。

    # BEGIN WordPress<IfModule mod_rewrite.c>RewriteEngine OnRewriteBase /RewriteRule ^index\.php$ - RewriteCond %{REQUEST_FILENAME} !-fRewriteCond %{REQUEST_FILENAME} !-dRewriteRule . /index.php </IfModule># END WordPress

    WordPress Codex には、マルチサイト用のデフォルトの .htaccess ファイルなど、より多くの例が掲載されていますのでご覧ください。 ここをクリックして、「The 2020 Guide to Managing 40+ WordPress Sites」をダウンロードしてください!

    Nginx Config

    Nginx を使用している場合、このファイルはホスティング プロバイダによって構成が異なるため、少しトリッキーになる可能性があります。 ホストに連絡して、リダイレクトのループや多すぎるリダイレクトの原因となっているものがないか、設定ファイルをチェックしてもらうことをお勧めします。

    Kinsta のクライアントであれば、まず、当社のリダイレクト ツールで間違ったリダイレクト設定をしていないことを確認する必要があります。 以下は、https://domain.com/から自分自身に戻るリダイレクトの簡単な例で、リダイレクトループを引き起こすことになります。

    Bad 301 redirect

    Bad 301 redirect

    これは、ロケーション URL が “Redirect From” と “Redirection To” の両方に含まれている場合にもよく発生する現象です。 ^/blog/about Redirect To: https://domain.com/blog/about-me

    なぜでしょうか。 プロセスが^/blog/aboutに達すると、残りの部分-meはどうでもよくなり、無限ループを引き起こすからです。 文字列の終点と始点を指定する必要があります。 以下は、それを解決するための方法です:

    Redirect From: ^/blog/about$ Redirect To: https://domain.com/blog/about-me

    $ 文字は、文字列が正確に存在し、その後に何もない場合のみリクエストを停止してマッチするよう Nginx に伝えます。

    そしてもちろん、サポート チケットを開いていただければ、いつでもこれを確認します。

    Misconfigured Reverse Proxy

    ERR_TOO_MANY_REDIRECTS エラーのもうひとつの共通の原因はリバース プロキシを使用している場合です。 リバース プロキシは非常に複雑で、設定を誤ると、WordPress サイトをリダイレクト ループに送ることは非常に簡単です。 繰り返しになりますが、Kinstaのクライアントであれば、当社のサポートチームがお手伝いできます。

    ウェブサイトが無限リダイレクトループで立ち往生していますか? Click to Tweet

    Summary

    リダイレクトループは、追跡するのが難しいことがあります。 しかし、上記のトラブルシューティングの手順のいくつかが、ERR_TOO_MANY_REDIRECTS エラーの解決に役立つことを願っています。

    この記事をお気に召していただけたなら、KinstaのWordPressホスティングプラットフォームを気に入っていただけると思います。 あなたのウェブサイトをターボチャージし、当社のベテランWordPressチームから24時間365日サポートを受けることができます。 当社のGoogle Cloudを利用したインフラは、自動拡張、パフォーマンス、およびセキュリティに重点を置いています。 Kinstaの違いをお見せしましょう。 プランをチェックする

コメントを残す

メールアドレスが公開されることはありません。