TrueURL
TrueURL

メニュー

無料のリダイレクトツール

301 リダイレクトチェッカー

URL が恒久的にリダイレクトしているのか、一時的にリダイレクトしているのかを確認できます。TrueURL はすべてのホップを調べ、検索エンジンがその移動を恒久的なものとして扱うかどうかを判定します。

恒久的か一時的か:ステータスコードが重要な理由

ステータスコードは、それがどのような移動なのかを、サーバーが検索エンジンに伝える手段です。恒久的なリダイレクト(301 または 308)は、古い URL がもう戻らないことを示します。そのため検索エンジンは新しい URL をインデックスし、リンクなどのシグナルを新しい URL に集約します。一時的なリダイレクト(302、303、307)は、古い URL がいずれ戻ってくることを示すため、通常は古い URL がインデックスに残ります。

訪問者にはこの違いがまったくわからないため、誤ったステータスコードが何か月も気づかれないままになることがあります。多くのツールは、特に指定しない限り一時的なリダイレクトを返します。PHP の header('Location: ...')、Express の res.redirect()、Apache の Redirect ディレクティブは、いずれもデフォルトで 302 を返します。

判定結果の見方

TrueURL は、最初のホップだけでなく、チェーンのすべてのホップをチェックします。

  • すべてのリダイレクトが 301 または 308:恒久的な移動です。ページの移動、ドメインの変更、HTTPS 化では、この状態が理想です。
  • 302、303、307、meta refresh、JavaScript リダイレクトのホップが 1 つ以上ある:チェーン全体が恒久的とはいえません。本当に一時的な移動でない限り、それらのホップをサーバーサイドの 301 に変更してください。
  • リダイレクトがまったくない:URL が直接レスポンスを返しています。リダイレクトを想定していた場合は、ルールが有効になっていないか、キャッシュがまだ古いページを返しています。
  • 最終ページが読み込まれない:リダイレクト自体は機能していますが、転送先が 404、410、5xx エラーを返しているか、途中のホップが失敗しています。転送先を修正するか、最も関連性の高いページにリダイレクトするようにしてください。

301 と 308、302 と 307 の違い

301 と 308 はどちらも恒久的なリダイレクトで、Google は両者を同じように扱います。違いはリクエストメソッドにあります。301 の後、ブラウザーは POST を GET に変えることがありますが、308 ではメソッドとボディが必ず維持されます。通常のページには 301 を、POST リクエストを受け取り続ける必要がある API エンドポイントやフォームの送信先には 308 を使います。一時的なリダイレクトの 2 つも同じ関係で、302 ではメソッドが変わることがあり、307 では決して変わりません。

すべての 3xx コードの詳しい比較は、「リダイレクトのステータスコード解説」をご覧ください。

一時的なリダイレクトが適しているケース

  • A/B テストや短期間のキャンペーンで、数週間だけトラフィックを別のページに送る場合。
  • 短時間の障害時に、ステータスページへ一時的にリダイレクトする場合。ただし検索エンジンに対しては、元の URL で 503 を返すほうが適切なシグナルになります。
  • 訪問者の言語、地域、デバイス、ログイン状態に応じたリダイレクトで、元の URL をインデックスに残す必要がある場合。
  • フォーム送信後(Post/Redirect/Get パターン)に、303 See Other でブラウザーを結果ページに送る場合。

それ以外、特にサイト移転や URL の変更では、301 を使用してください。

関連ガイド

  • 13 分で読めます

    リダイレクトのステータスコード解説:301・302・307・308

    すべての 3xx ステータスコードの意味を解説します。301、302、303、307、308 の違いを、恒久的か一時的か、メソッドの扱い、キャッシュ、SEO への影響で比較し、nginx、Apache、PHP の設定例も紹介します。

    記事を読む

よくある質問

リダイレクトが 301 か 302 かは、どうすれば確認できますか?

上の入力欄に古い URL を入力してください。TrueURL はリダイレクトを自動でたどらずにリクエストを送り、すべてのホップの正確なステータスコードを表示します。コマンドラインの場合、curl -I https://example.com/old-page は -L を付けない限り最初のレスポンスしか表示せず、meta refresh や JavaScript リダイレクトも検出できません。curl のオプションについては、ガイド「URL リダイレクトの確認方法」で解説しています。

301 リダイレクトで SEO の評価はすべて引き継がれますか?

Google は、301 や 302 などのサーバーサイドリダイレクトで PageRank が失われることはないと説明しています。異なるのは正規化のシグナルです。301 は新しい URL をインデックスするよう Google に伝え、302 は古い URL を維持するよう示唆します。通常、両方のページが再クロールされると、検索順位は新しい URL に落ち着きます。

301 リダイレクトはどのくらいの期間維持すべきですか?

Google は少なくとも 1 年間はリダイレクトを維持するよう推奨していますが、無期限に残しておくほうが安全です。古いリンク、ブックマーク、他サイトからの参照は、何年にもわたって古い URL を使い続けるからです。リダイレクトルールを残しておくコストはほとんどかかりません。

301 リダイレクトが 302 と表示されるのはなぜですか?

よくある原因は、デフォルトで 302 を返すプラグインやフレームワーク、自分のルールより先に実行される CDN やホスティングのルール、キャッシュされた古いレスポンスなどです。各ホップを確認してください。302 を返しているホストやパスが、自分のルールで処理しているものと異なる場合は、別のレイヤーがそのリダイレクトを追加しています。

ブラウザーは 301 リダイレクトをキャッシュしますか?

はい。ブラウザーは 301 や 308 のリダイレクトを長期間、多くの場合はキャッシュが消去されるまで保持することがあります。そのため、誤った 301 を一度たどった訪問者には、その誤りが残り続けることがあります。新しいルールをテストする間は 302 か短い Cache-Control: max-age を使い、正しく動作することを確認してから 301 に切り替えましょう。TrueURL はレスポンスをキャッシュしないため、常にサーバーが現在返している内容を表示します。

308 リダイレクトは 301 より優れていますか?

SEO の面では違いはなく、Google は両者を同じように扱います。308 のほうが適しているのは、リクエストメソッドを維持する必要がある場合だけです。たとえば、POST リクエストを受け取る API エンドポイントなどです。ごく古いクライアントの中には 308 を理解できないものもあるため、ウェブページには引き続き 301 が安全なデフォルトです。

削除したページはトップページに 301 リダイレクトすべきですか?

トップページが本当に最適な代替ページである場合に限ります。Google は、削除したページからトップページへのリダイレクトをソフト 404 として扱うことがあります。最も内容の近いページにリダイレクトするか、該当するページがなければ 410 Gone または 404 Not Found を返してください。