HTTP 302エラーを修正する方法(5つの方法)

公開: 2021-11-06

HTTP 302コードは、Webサイトユーザーを一時的に別のURLにリダイレクトするための貴重な方法です。 ただし、Webサイトが誤って302リダイレクトを配信している場合は、何かが間違っていることを示しています。

心配しないでください—この問題は修正できます—しかし、トラブルシューティングを行う必要があります。

最初のステップは、HTTP 302コードとは何か、それらがどのように機能するか、そしてなぜそれらが発生するのかを正確に理解することです。 それを知ったら、何がうまくいかなかったのか、そしてそれを正しくする方法を理解することができます。

この投稿では、HTTP302エラーについて知っておく必要のあるすべてのことを説明します。 次に、それらを修正するのに役立つ5つのトラブルシューティングのヒントを共有します。

始めましょう!

302HTTPステータスコードのビデオガイドをご覧ください

HTTP 302ステータスコードとは何ですか?

302コードは、特定のタイプのHTTPステータスコードです。 これらのコードは、サーバーがブラウザに配信する「メモ」のようなものです。

リンクをクリックするかURLに移動するたびに、ブラウザはWebサーバーに同じことを要求します。 その見返りとして、サーバーは関連するリソース(たとえば、アクセスしようとしているページ)をHTTPヘッダーとともに送り返します。 HTTPステータスコードはそのヘッダー内にあります。

通常、これらのステータスコードはWebページのどこにも表示されません。 通常、エラーが発生した場合、またはそれらを表示するブラウザ拡張機能をインストールした場合にのみ表示されます。

Chromeブラウザ拡張機能を使用して表示された現在のURLのHTTPステータスコードを示すスクリーンショット。
Chromeブラウザ拡張機能を使用して表示されるWebページのHTTPステータスコード。

3xxステータスコード(301、302など)は、「リダイレクトコード」と呼ばれるステータスコードのクラスです。 サーバーが要求されたリソースではなく新しいリソースを送り返すたびに返されます。

つまり、アクセスしようとしたWebサイトページが別のページにリダイレクトしたときに表示されます。

コード301とコード302の重要な違いは、前者が永続的なリダイレクトに使用されるのに対し、後者は一時的なリダイレクトに使用されることです。

301リダイレクトも「リンクジュース」を渡しますが、302は渡しません。 それは検索エンジン最適化(SEO)に大きな影響を及ぼします。

ええと...HTTP302コードがポップアップするのを見たところです。 それで? この徹底的なガイドから始めましょうクリックしてツイート

302リダイレクトの仕組み

一時的に利用できないWebサイトのページに302リダイレクトを設定し、ユーザーがそのページにアクセスすると、Webサーバーは訪問者のブラウザに特別なLocationヘッダーで応答します。 このヘッダーは、ブラウザが代わりにユーザーをリダイレクトする新しいURLを示します。

たとえば、ユーザーがブラウザのURLバーにblog.example.comと入力したが、Webサイトはそれをblogging.example.comにリダイレクトするように構成されているとします。

サーバーの応答には、302ステータスコードとLocation:blogging.example.comヘッダーの両方が含まれます。 この設定は、代わりにこのリクエストを新しいURLにリダイレクトするようにユーザーのブラウザに指示します。

もちろん、これはすべて自動的に舞台裏で行われます。 ユーザーは、このプレイアウトのいずれも見ることができないはずです。 代わりに、ブラウザは自動的に新しいリソースに移動する必要があります。

HTTP302エラーが発生する理由

Webサイトで何かが正しく構成されていない場合、302コードが誤って発行される可能性があります。 これが発生した場合、次のような問題が発生する可能性があります。

  • あるべきではないときに訪問者を別の場所にリダイレクトするWebサイトのページ
  • 訪問者を間違ったリソースにリダイレクトするWebサイトのページ
  • ERR_TOO_MANY_REDIRECTSエラー(「リダイレクトループ」とも呼ばれます)

これらの問題の最後は、実際のエラーページを表示する唯一の問題です。 Chromeブラウザを使用している場合、リダイレクトループエラーページは次のようになります。

ChromeのERR_TOO_MANY_REDIRECTSエラーメッセージとテキスト
ChromeのERR_TOO_MANY_REDIRECTSエラーメッセージ。

Mozilla Firefoxでは、次のようになります。

FirefoxのERR_TOO_MANY_REDIRECTSエラーメッセージとテキスト
FirefoxのERR_TOO_MANY_REDIRECTSエラーメッセージ。

上記の問題はすべて、設定の誤りが原因で発生します。 プラグインの競合、誤ったURL設定、または誤って構成された.htaccessファイルである可能性があります。

HTTP 302エラーを修正する方法(5つの方法)

次に、問題の原因を特定して修正するのに役立つ5つのトラブルシューティング方法について説明します。

始める前に、まずWebサイトの完全バックアップを実行してください。 そうすれば、何か問題が発生した場合でも、いつでも以前のバージョンに戻すことができます。 これを行うには、WordPressプラグインを使用できます。

1.リダイレクトが有効かどうかを判断します

通常、302応答はエラーではありません。 ユーザーを一時的に別のページにリダイレクトすることは有効な構成である可能性があり、通常は修正が必要なものではありません。

Webサイトが発行すべきではない302コードで応答している場合、またはリダイレクトループが発生している場合は、エラーになります。 したがって、最初のステップは、HTTP 302コードを生成しているURLを再確認し、リダイレクトが適切かどうかを判断することです。

これを行うには、302エラーを発行していると思われるWebサイトのページに移動し、それらが期待どおりに動作するかどうかを確認します。 一時的に利用できないページが正しいリソースにリダイレクトされる場合、適切に構成されています。

ただし、ページが間違ったリソースにリダイレクトしたり、ブラウザがERR_TOO_MANY_REDIRECTSエラーページを表示してリダイレクトループを報告したりする場合は、1つ(または複数)のリダイレクトが正しく構成されていないことを示しています。

2.プラグインを確認します

302エラーとリダイレクトループの最も一般的な原因の1つは、プラグインです。

一部のWordPressリダイレクトマネージャープラグインとYoastSEOなどのSEOツールは、Webサイトのリダイレクトを管理し、リダイレクトルールを設定できるようにします。

YoastSEOPremiumプラグインのリダイレクト設定ページ。
YoastSEOPremiumプラグインのリダイレクト設定ページ。

これらのルールが正しく構成されていない場合、または2つのプラグインが競合している場合、予期しない問題が発生する可能性があります。 したがって、サイトにインストールされている関連する各ツールを確認する必要があります。

たとえば、人気のある301リダイレクトWordPressプラグインを使用している場合は、 [設定] > [ 301リダイレクト]に移動して、構成を確認できます。 [リダイレクトルール]の下に、設定したすべてのリダイレクトルールのリストが表示されます。

301RedirectsWordPressプラグインのRedirectRules設定ページ。
301RedirectsWordPressプラグインのRedirectRules設定ページ。

ここにリストされているすべての302リダイレクトをチェックし、それらがすべて正しいことを確認します。

また、リダイレクトループを引き起こす可能性のある方法で何も設定していないことを確認する必要があります。 たとえば、Page-AがPage-Bにリダイレクトするように設定されているが、Page-BもPage-Aにリダイレクトするように設定されている場合、これによりエラーが発生します。

複数のリダイレクトマネージャープラグインがあり、どれが問題の原因であるかわからない場合は、WordPressプラグインページからそれらを1つずつ非アクティブ化してみてください(必ず最初にバックアップを作成してください)。

WordPress管理ダッシュボードのプラグインページ。
WordPress管理ダッシュボードのプラグインページ。

各プラグインを非アクティブ化した後、問題のURLに再度アクセスして、302エラーが続くかどうかを確認してください。

問題が突然修正された場合は、問題の原因となっているプラ​​グインがわかり、さらにトラブルシューティングを行うか、サイトから削除するかを選択できます。

3.WordPressのURL設定が正しく構成されていることを確認します

HTTP 302エラーのもう1つの一般的な原因は、WordPressのURL設定の設定ミスです。

これを確認するには、WordPressダッシュボードで[設定] >[一般]に移動します。 ここに、 WordPressアドレス(URL)フィールドとサイトアドレス(URL)フィールドが表示されます。

[アドレス]フィールドが強調表示されたWordPressの[一般設定]ページ。
WordPressの[一般設定]ページ。

ほとんどの場合、これらのフィールドの両方のURLは一致する必要があります。 ドメイン名の前の「www」の部分(またはその欠如)を含めて、両方が同じであることを確認してください。

ワールドクラスのサポートチームで、卓越したWordPressホスティングサポートを体験してください! Fortune500クライアントを支援しているのと同じチームとチャットします。 私たちの計画をチェックしてください

一致しない場合は、設定を更新してから、HTTP 302エラーを発行しているページのURLをチェックして、修正されているかどうかを確認してください。

4.サーバー構成を確認します

サーバーの設定を誤ると、302リダイレクトエラーが発生する場合もあります。 したがって、次のステップはサーバー構成を確認することです。

ホストがApacheWebサーバーを使用している場合は、 .htaccessファイルを確認することでこれを行うことができます。

まず、cPanelやFTPクライアントなどのコントロールダッシュボードを介してサイトのサーバーに接続します。 次に、サイトのルートディレクトリ( wp-adminおよびwp-contentフォルダーと同じ場所)に移動し、 .htaccessファイルを見つけます。

Webサイトのルートディレクトリフォルダで強調表示されている.htaccessファイルのスクリーンショット。
サイトのルートにある.htaccessファイル。

ここで.htaccessファイルが見つからない場合(そしてApacheサーバー上にあることが確実な場合)、ファイルリストに表示される前に隠しファイルを表示するようにFileZillaに指示する必要があります。

次に、お気に入りのテキストエディタでファイルを開きます。 次のようになります。

コード内でRewriteXXXディレクティブが強調表示された、テキストエディタで開いている.htaccessファイルのスクリーンショット。
.htaccessファイルのRewriteXXXディレクティブ。

次に、 RewriteXXXディレクティブ(上記で強調表示されている要素)を探します。 技術的になりすぎることなく、 RewriteRule RewriteCondを使用して、あるURLから別のURLへのリダイレクトを実行します。

RewriteCondディレクティブは、訪問者をリダイレクトするURLを指定RewriteCondディレクティブは、訪問者をリダイレクトするURLを指定ます。 次に例を示します。

 RewriteEngine on RewriteCond %{HTTP_HOST} ^website.com$ RewriteRule ^(.*)$ http://www.temporary-website.com/$1 [R=302]

最後のフラグ「[R=302]」は、これが一時的な302リダイレクトであることをブラウザに通知します。

.htaccessファイルに上記と同様のRewriteXXXの組み合わせが含まれていてはならないことに気付いた場合は、それらをコメントアウトして変更を保存し、問題のあるWebページをリロードして問題が解決するかどうかを確認できます。

何か問題が発生した場合に備えて、変更を加える前に、必ず.htaccessファイルの予備のコピーをダウンロードして保存してください。

5.あなたのウェブホストに話しかける

上記のすべての方法を試しても問題が解決しない場合は、次のステップはWebホストに話しかけることです。

この時点を超えて302コードエラーをトラブルシューティングするには、多くの技術的ノウハウが必要です。 したがって、プロの開発者でない限り、専門家の助けを借りることがおそらく最善です。

キンスタでは、真剣にサポートを行っています。 私たちのWordPressエキスパートのチームは、このような問題が発生したときにいつでも解決できるように常に待機しています。

Kinstaサポートページのスクリーンショット。
Kinstaサポートページ。

24時間年中無休でご利用いただけます。 MyKinstaアカウントにログインし、ライブチャットでお問い合わせいただくだけで、リアルタイムでサポートできるサポートエンジニアにご連絡いただけます。

HTTP302コードがロールを遅くしないようにしてください。 これらの5つのトラブルシューティングのヒントでそれらを解決する方法を学ぶクリックしてツイート

概要

HTTP 302ステータスコードは、Webサイトの訪問者をリダイレクトするための完全に通常の方法です。 ただし、リソースページが一時的に利用できない場合にのみ使用してください。

あなたのウェブサイトが誤って302コードを発行しているか、リダイレクトループを引き起こしていると仮定します。 その場合、この問題をできるだけ早く修正することが重要です。そうしないと、SEOとコンバージョンに悪影響を与える可能性があります。

次の5つの手順に従って、WebサイトのHTTP302エラーを修正できます。

  1. 302リダイレクトを発行しているURLを調べて、リダイレクトが適切かどうかを判断します。
  2. プラグインをチェックして、リダイレクト設定が有効であることを確認してください。
  3. WordPressのURL設定が正しく構成されていることを確認してください。
  4. .htaccessファイルで誤ったRewriteXXXディレクティブを探して、サーバー構成を確認します(Apacheサーバーのみ)。
  5. 問題が解決しない場合は、Webホストに相談してさらにテクニカルサポートを受けてください。

HTTP 302エラーについて質問がありますか? コメント欄でお知らせください。