リダイレクトエラーが多発するのは、リダイレクトツールの不適切な使用が原因です。このエラーは、ウェブサイトに関係するプラグインの不具合から発生する可能性があります。すべてのプラグインフォルダーを無効化して削除し、サイトのエラーをテストしてください。今すぐサイトにログインしてみてください。FTPで新しい .htaccess ファイルを作成し、アカウントから無効化します。リダイレクトの問題を修正できますか?もちろん、はい。リダイレクトループの修正方法については、ガイドをご覧ください。
リダイレクトエラーの根本原因を見つける
リダイレクトエラーの根本原因を知ることで、エラーを迅速かつ簡単に修正することができます。サーバーがブラウザーに情報を返すたびに、ステータスコードが返されます。これにより、ブラウザーはサーバーとのやり取りの結果を簡単に識別できるようになります。HTTPステータスコードには一連の標準コードがあり、ステータスコードを確認することでリダイレクトの問題を簡単に見つけることができます。こちらにHTTPステータスコードの一覧があります。
HTTPステータスコード
- 1xx 情報応答 – リクエストが受信され、処理が継続中
- 2xx 成功 – リクエストが正常に受信、理解され、受理された
- 3xx リダイレクション – リクエストを完了するためにさらなるアクションが必要
- 4xx クライアントエラー – リクエストに不正な構文が含まれているか、またはリクエストが実行不可能
- 5xx サーバーエラー – サーバーが明らかに有効なリクエストを処理できなかった
Live HTTP Headersブラウザープラグインの使用
Chromeを使用している場合は、ChromeウェブストアからLive HTTP Headersプラグインをインストールしてください。
Mozilla Firefox用のHTTP Header LiveをMozillaアドオンサイトからインストールしてください。
インストール後に拡張機能をクリックします。ブラウザタブが作成され、MagentoのURLが開かれます。Live Reloadタブに戻ると、リダイレクトされているURLとHTTPステータスコードが表示されます。
これにより、最初に開かれるURLとその後に続くURLの概要が把握できます。
コマンドラインまたはターミナルでCURLを使用
コンピューターにcurlがインストールされていることを確認してください。
macOS / Unix / Linuxの場合、ターミナル/コマンドラインで以下を試してください。
curl --version
curl 7.54.0 (x86_64-apple-darwin18.0) libcurl/7.54.0 LibreSSL/2.6.5 zlib/1.2.11 nghttp2/1.24.1
Protocols: dict file ftp ftps gopher http https imap imaps ldap ldaps pop3 pop3s rtsp smb smbs smtp smtps telnet tftp
Features: AsynchDNS IPv6 Largefile GSS-API Kerberos SPNEGO NTLM NTLM_WB SSL libz HTTP2 UnixSockets HTTPS-proxy
次のコマンドを、例のURLを実際のリダイレクトURLに置き換えて試してください。
curl -LI http://yourdomain.com/problematic-page
またはcurl --head --location http://yourdomain.com/problematic-page
-L または --location オプションはリダイレクトに従います -I または --head オプションはヘッドリクエストを行い(ヘッダー情報のみを取得し、完全なコンテンツは取得しません。デバッグに非常に便利です)
時には、ネットワークプロキシやサーバーがリクエストをキャッシュしてしまい、古いコンテンツが返されることがあります。この問題を回避するためには、
古典的な手法として、URLの末尾に一意のクエリ文字列を追加する方法が使えます。
curl https://yourdomain.com/page-you-are-debugging/?foo123
私は https://google.com で試してみたところ、以下のような結果を得ました。もしあなたも同様の結果を得たなら、リダイレクトがブラウザでのみ行われていることが分かり、それがブラウザキャッシュによるものであると結論付けることができます。
curl -LI https://google.com
HTTP/2 301
location: https://www.google.com/
content-type: text/html; charset=UTF-8
date: Mon, 18 Oct 2021 09:35:17 GMT
expires: Wed, 17 Nov 2021 09:35:17 GMT
cache-control: public, max-age=2592000
server: gws
content-length: 220
x-xss-protection: 0
x-frame-options: SAMEORIGIN
alt-svc: h3=":443"; ma=2592000,h3-29=":443"; ma=2592000,h3-T051=":443"; ma=2592000,h3-Q050=":443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043=":443"; ma=2592000,quic=":443"; ma=2592000; v="46,43"
HTTP/2 200
content-type: text/html; charset=ISO-8859-1
p3p: CP="This is not a P3P policy! See g.co/p3phelp for more info."
date: Mon, 18 Oct 2021 09:35:18 GMT
server: gws
x-xss-protection: 0
x-frame-options: SAMEORIGIN
expires: Mon, 18 Oct 2021 09:35:18 GMT
cache-control: private
set-cookie: 1P_JAR=2021-10-18-09; expires=Wed, 17-Nov-2021 09:35:18 GMT; path=/; domain=.google.com; Secure
set-cookie: NID=511=VhFlJBcje2ORS_swBA35XZFXZ6IULM4GBdHQr3F2fLp9owgnI_56Fezbf-LazYg5QjSZ8lpGp8JqV_gn4Y6XLeTZ5vA6QSCtmCU7m8pVY4quOsgCuiw5nuVHyqQscAaqo576kbHj7LZ9JoTTBVdQw8zTNoqU1hvkORIJw5lvcew; expires=Tue, 19-Apr-2022 09:35:18 GMT; path=/; domain=.google.com; HttpOnly
alt-svc: h3=":443"; ma=2592000,h3-29=":443"; ma=2592000,h3-T051=":443"; ma=2592000,h3-Q050=":443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043=":443"; ma=2592000,quic=":443"; ma=2592000; v="46,43"
Magentoストアに検索機能を追加する
ウェブサイトデバッグの黄金律
リダイレクトの問題を確認する際は、常にウェブサイトのコードのキャッシュされていないバージョンを確認する必要があります。CURLは連続するリクエスト間でキャッシュしません。確認する際は常にCURLを使用するべきです。この場合、以下を使用できます。
curl -LI https://google.com
CURL自体にはウェブサイトやウェブアプリケーションのデバッグに多くのオプションがあり、時間をかけて探索する価値があります。
ウェブブラウザでのリダイレクトエラーを修正するには?
通常、ブラウザは一度に20回のリダイレクトを処理できます。根本的な原因は、使用しているリダイレクトプラグインによるものである可能性が高いです。プラグインを無効にして、ウェブサイトをテストし、エラーの可能性を確認してください。アドレスとサイトアドレス設定で2つのURL識別子がある場合は、それぞれを別々に変更してください。以下のいずれかを行うことができます。
- インストールされているすべてのプラグインやパッケージを再インストールし、正しいものを1つずつ有効にします。
- 使用しているリダイレクトプラグインを再インストールします。
- すべてのプラグインを無効にし、1つずつ有効にして、プラグインを有効にするたびにサイトのリダイレクト問題を確認します。
Magento 2でリダイレクトが多すぎる問題を修正するには?
サイト管理者である必要はありません。ブラウザのキャッシュやクッキーをクリアし、その後ページを更新してください。それでも解決しない場合は、管理者に連絡して修正してもらう必要があります。
ただし、サイト管理者である場合、いくつかの手順を行う必要があるかもしれません。前述のように、このエラーはMagento 2の設定ミスが原因であることが多いです。時には、キャッシュやクッキーをクリアするだけで解決することもあります。
これから、訪問者に失望させないために、このエラーメッセージを取り除くためのいくつかの戦略をご紹介します。
MagentoダッシュボードでURL設定を確認する
URL設定を常に確認する必要があります。ミスがリダイレクトループにつながることがあります。
- ダッシュボードにログインします。メインメニューからストア > 設定を選択します。
2. 右上にあるシステム > 設定をクリックします。
3. メインメニューから一般リストのウェブをクリックします。
system configuration > general > web” width=”501″ height=”395″>
- 特定のURLやパスが複数の場所で使用されている場合、リダイレクトが混乱を引き起こすことがあります。非SSL > ベースURLとSSL > ベースURLが矛盾していないことを確認してください。以下を含まないようにしてください:
- 末尾のスペース。
- 先頭にwwwが付いているもの (例:https://www.example.com ではなく https://example.com)
“www” を含むURLを変更することができますが、現在のURLはそのままにしてください。それらは同じであるか、両方とも含む可能性があります。また、PHPをHTMLの前に挿入することを試してみることもできます。
.htaccess の精査/確認
.htaccess は Apache ウェブサーバーの設定ファイルです。潜在的な問題がないか確認することをお勧めします。
変更を加える前に .htaccess のバックアップを必ず取ってください。
フォルダ階層に複数の .htaccess ファイルが存在する可能性があるため、すべてのファイルを確認し、潜在的な問題をチェックしてください。
セキュリティ プロトコルの変更
セキュリティ プロトコル (SSL 証明書) を使用している場合は、デフォルト プロトコルに切り替えてください。ページを更新して、リダイレクト ループが解消されたことを確認します。
メッセージが表示され続ける場合は、SSL 証明書を再度使用する前に正しく設定する必要があります。アドレスは HTTPS のままです。
ユーザーのセキュリティを確保するための設定に戻るには、専門家のサポートに相談することをお忘れなく。セキュリティは、サイトの信頼性を高めるために重要です。
Magento 2 のエラー ERR_TOO_MANY_REDIRECTIONS とは何ですか?
ブラウザが元のページと宛先ページのリンクを確立できない場合、多くのリダイレクトが表示されます。
Google Chrome は「このページは機能していません」と表示します。www.example.com はリダイレクトを繰り返しています。クッキーを消去してください。ERR_TOO_MANY_REDIRECTS」または「このウェブページにはリダイレクト ループがあります ERR_TOO_MANY_REDIRECTS」といった警告メッセージが表示されます。
Mozilla Firefox では、次のようなメッセージが表示されます:
「ページが正しくリダイレクトされません。Firefox は、Web サーバーがこのアドレスに対してリクエストを終了しない方法でリダイレクトしていることを検出しました。この問題は、クッキーを無効にするか、受け入れを拒否することで発生することがあります ERR_TOO_MANY_REDIRECTS」
これらのメッセージは明確です:ページがリダイレクト ループまたはリダイレクト要求が多すぎるため、読み込まれません。
ERR_TOO_MANY_REDIRECTS エラーはなぜ発生するのですか?
リダイレクトは、効率的なSEO戦略または、ユーザーが異なるURLのページにアクセスできるようにするツールです。
重要なウェブサイトがあり、訪問者が新しいページに誘導されることを好むと仮定しましょう。
リダイレクトを使用して、ユーザーが古いページにアクセスしようとしても自動的に新しいページにナビゲートできるようにします。たとえ間違ったアドレスを一度入力しても、正しいページに到達できます。
しかし、設定が間違っている場合、ブラウザは混乱し、訪問者を別の場所にリダイレクトします。
ブラウザがどの URL を使用すべきか理解できない、または知らない場合、システムは負荷を避けるために正しい URL を探すのを停止します。エラーメッセージが画面に表示されます。
場合によっては、ブラウザが無限リダイレクト ループに入ることもあります。これは、新しい URL が古い URL にリダイレクトされる設定ミスが原因です。
最後に、システムはメッセージ「ERR_TOO_MANY_REDIRECTS」を表示します。
詳細はMagento 2 の検索設定ガイドを参照してください。
あなたにとってはどうでしょう?
Magento ストアで TOO MANY REDIRECTS のようなエラーが発生している場合、その原因は .htaccess ファイルまたはキャッシュ フォルダーにあります。
新しい Magento パッケージから新しい .htaccess のコピーを配置し、キャッシュとセッション フォルダーを削除します。その後、更新すると問題は解決するはずです。
もう一つの方法は、
「core_config_data」テーブルで「web/cookie/cookie_domain」の値を削除し、「web/cookie/cookie_httponly」を「0」に設定します。その後、「var/cache」のファイルを削除してキャッシュをクリアします。
次に、以下の質問が浮かぶかもしれません。 Googleのような検索エンジンをMagentoストアに追加する方法、このような素晴らしい機能を持つものです。例えば、Magento検索オートコンプリートなどの機能は、どんなサイトの検索もクールで非常に機能的に見せます。Google検索のような検索ソリューションに変える素晴らしい検索ソリューションはExpertrec検索です。これには、Magentoカスタム検索モジュールExpertrecが必要です。
しばしば、Magento検索が動作しないという問題に直面するかもしれません。これはMagentoが複雑な設定であり、それ自体に構築することで多くの問題が発生する可能性があるためです。自分で検索を構築しようとすると、Magento 2検索が動作しない修正方法などの問題が発生することがあります。また、Magento検索が結果を返さないといった問題にもつながる可能性があります。そのため、迅速でクールなMagento 2カスタム検索エンジンが必要です。
良い検索機能があると、音声検索を追加することでGoogleのような体験を完成させることができると思うかもしれません。この設定には多くのコーディングが必要だと考えるかもしれませんが、Magento 1および2に音声検索を追加する方法(コーディング不要)といった情報もあります。これが再びExpertrec検索の助けとなります。今やMagento 2カスタム検索バーを持つことは簡単で、Magento 2カスタムカタログ検索のようなクールな機能をウェブサイトの訪問者に提供することも、コーディングなしで非常に簡単に行えます。
FAQ
1. Magento 301リダイレクトを適切に実装するには?
Magento 301リダイレクトは、存在しないURLから存在するURLに訪問者をリダイレクトするのに役立ちます。これにより、MagentoウェブサイトのSEOに利益があります。例えば、ウェブサイト全体を再編成または置き換える場合、同じURLを使用するのは現実的ではありません。301リダイレクトを使用すれば、ユーザーは正確な場所に到達できます。301リダイレクトは、新しいURLに永久にトラフィックをルーティングする場合に最適です。最初のものはGoogleやすべての現代の検索エンジンです。
例えば、ユーザーがあなたのウェブサイトを検索しており、最近古いURLを新しいURLに置き換えた場合、またはURLを変更したが301リダイレクトを設定しなかった場合、クリックしたURLにエラーが表示されます。代わりに、301リダイレクトを設定すると、ユーザーが同じ古いURLをクリックしたときに、サーバーは自動的に試行を認識し、指定した新しいURLにユーザーをルーティングします。これにより、GoogleはページのURLが変更されたことを理解します。古いURLと同じランクを維持するのに優れています。
2. URLリダイレクトを避けてサイトを速く読み込むには?
Magento2の301および302リダイレクトは、新しいURLリダイレクトを作成し、ユーザーを新しい場所に導くのに役立ちます。
URLリダイレクトは、古いまたは壊れたURLと新しいまたはアクティブなURLとの間の接続を助けます。人が古いリンクを開こうとすると、「リダイレクト」が自動的に新しいリンクに導きます。URLリダイレクトは常に避けられるわけではないので、以下のヒントでそれらを最小限に抑えることができます。
- すでにリダイレクトが設定されているページへのリンクは避けてください。そうしないと、複数のリダイレクトが発生し、サイトが遅くなります。
- ウェブサイトを定期的にスキャンして、長い間削除したページにリダイレクトが残っているかを検出します。
- 不要なリダイレクトを引き起こす可能性のあるプラグインは避けてください。不要なプラグインは削除してください。
3. Magento2で301および302リダイレクトを作成して使用するには?
時々、ページのURLを変更または再編成したり、エラーを避けるために無効にしたりしたいことがあります。そのためには、Magento2の301または302リダイレクトを設定する必要があります。
以下の手順で、Magento2で301リダイレクトを設定できます。
- 管理パネル > マーケティング > SEO & 検索 > URLリダイレクトに移動します。
- 次に、「URLリダイレクトを追加」ボタンを押します。
- その後、URLリダイレクト情報を入力します。
- ストア – ストアビューを選択します。これによりリダイレクトが有効になります。
- リクエストパス – リダイレクトするURLを入力します。
- ターゲットパス – ページがリダイレクトされるURLを入力します。
- リダイレクトタイプ – 必要なリダイレクトタイプを301と302から選択します。
- 説明 – 任意の説明を入力します。
すべての詳細を入力した後、「保存」ボタンを押します。
301リダイレクトは、トラフィックを新しいURLに永久にルーティングするために使用されます。
- ウェブサイトまたはウェブページを移動するため。
- ドメイン名を永久に変更するため。
- HTTPからHTTPSに変更するためなど。
また、302リダイレクトは一般的にリソースの一時的な移動のために使用されます。
- ページが更新中またはメンテナンス中の場合。
- 関連するウェブページにユーザーを導くため。