301、302、307、308リダイレクトの違いと使い分け
サイト移行、キャンペーン、API移行でどのリダイレクトコードを選ぶべきかを整理します。判断軸は、変更が永続か一時か、HTTPメソッドを保持する必要があるかです。

301、302、307、308リダイレクトで迷ったら、まず次の2点だけを決めます。変更は永続的か一時的か。もう1つは、POST などのHTTPメソッドとリクエスト本文をそのまま保持する必要があるかです。
- 通常のページ移転なら、永続的な変更には 301 を使います
- APIやフォーム送信でメソッドと本文を保持したい永続移転には 308 を使います
- キャンペーンやメンテナンスなど一時的な変更には 302 を使います
- 一時的なAPI/フォーム移転でメソッドを保持したい場合は 307 を使います
多くのWebサイト移行では、ページ単位の恒久移転に 301 を使うのが基本です。一方、フォーム、API、決済フローのように POST を POST のまま扱う必要がある場合は、307 と 308 をきちんと分けて考える必要があります。
サイト移行やホスト変更の途中でこの判断をしているなら、サイト移行前のリダイレクトチェックリスト もあわせて確認してください。ステータスコードの選択は、URL棚卸し、リダイレクトマップ、公開前検証が揃っていて初めて効きます。
最短実践解説
実務で見るべき判断は次の2つです。
- この変更は永続的なものですか、それとも一時的なものですか?
- 元のリクエスト メソッドはまったく同じである必要がありますか?
これにより、単純な意思決定表が得られます。
| 意図 | メソッド/本文の保持が必要ですか? | 最良の選択 |
|---|---|---|
| 永久ページ移動 | 通常はいいえ | 301 |
| 永続的な API またはフォーム エンドポイントの移動 | はい | 308 |
| 一時的なキャンペーン、メンテナンス、またはテスト | 通常はいいえ | 302 |
| 一時的な API またはフォーム エンドポイントの移動 | はい | 307 |
[!TIP] 通常のWebページをリダイレクトする場合は、複雑にしすぎないでください。多くのチームでは、永続的な移動なら301、一時的な移動なら302を基本にすると判断しやすくなります。
301 の意味
301 Moved Permanently リダイレクトは、要求されたリソースに新しい長期的な場所があることをクライアントとクローラーに伝えます。
一般的な使用例:
/old-pageを/new-pageに移動old-brand.comからnew-brand.comへの移行- 重複した URL の統合
- 1 つの正規ホストを強制する
チームが 301 を頻繁に使用する理由:
- ブラウザはそれをよく理解しています
- SEO チームはそれを期待しています
- 一般的なサイト移行の意図と一致します
- コンテンツ URL、ランディング ページ、ドキュメントに適しています。
従来のサイト移動を行う場合は、依然として 301 が最も安全なデフォルトです。 URL の変更に伴うサイトの移動 に関する Google のガイダンスをご覧ください。
その移動で古いパスやキャンペーン パラメータも保持する必要がある場合は、パスや UTM パラメータを失わずにドメインをリダイレクトする方法 を参照してください。
302 の意味
302 Found リダイレクトは、リソースが一時的に移動したことを示します。
一般的な使用例:
- 短期キャンペーンのルーティング
- 一時的なランディング ページへのトラフィックの送信
- メンテナンスモード
- ロールバックに適した迅速な実験
302 の最大の間違いは技術的なものではありません。それは組織です。チームは実際には永続的な動きに 302 を使用しますが、その後 6 か月間忘れてしまいます。
移動が永続的な場合は、永続的なコードを使用してその旨を伝えます。真の意図を推測するために検索エンジンやブラウザに依存しないでください。
307 の意味
A 307 一時リダイレクト は、元のリクエスト メソッドと本文を保持する一時的なバージョンです。
元のリクエストが単なるページの読み込みではない場合、これは重要です。
例:
- 一時的な API エンドポイントのリダイレクト
- メンテナンス中のフォーム送信の移動
- リクエストのセマンティクスを変更せずに一時的なステージング エッジを介してトラフィックをルーティングする
POST リクエストを POST のままにする必要がある場合は、302 よりも 307 を一時的に選択する方が安全です。
308 の意味
A 308 Permanent Redirect は、元のリクエスト メソッドと本文を保持する永続バージョンです。
一般的な使用例:
- API エンドポイントの永続的な移動
- 非 GET 動作を維持しながらサービス URL をバージョン管理する
- GET 動作に劣化させてはならないアプリケーション エンドポイントの移行
従来のページ移行の場合は 308 が有効ですが、多くのチームは依然として 301 を好みます。これは、より馴染みのある SEO およびコンテンツ移行コードであるためです。リクエストに応じたエンドポイントの変更の場合、308 の方が明確なシグナルです。
正しいものを選択する簡単な方法
次の判断フローを使用します。
次の場合は 301 を選択します。
- 変更は永続的です
- リクエストは通常のページ訪問です
- SEO、ドキュメント、製品ページ、またはブログの URL を移行しています
次の場合は 302 を選択します。
- 変更は一時的なものです
- 後でリダイレクトを削除または変更する予定です
- リクエストは通常のページ訪問です
次の場合は 307 を選択します。
- 変更は一時的なものです
- フォームまたは API リクエスト メソッドは変更しないでください。
次の場合は 308 を選択してください。
- 変更は永続的です
- フォームまたは API リクエスト メソッドは変更しないでください。
一般的な実例
例 1: サイトの移行
https://oldbrand.com/pricing -> https://newbrand.com/pricing
301を使用してください。
例 2: 一時的な公開前ページ
https://yourbrand.com -> https://yourbrand.com/waitlist
ホームページがすぐに戻る場合は、302 を使用してください。
例 3: API バージョンの移動
POST /api/v1/orders -> POST /api/v2/orders
移動が永続的であり、要求メソッドを変更しない必要がある場合は、308 を使用します。
例 4: 一時的なチェックアウトのリルート
POST /checkout -> POST /checkout-maintenance
短期間の変更中にリクエストのセマンティクスを保持する必要がある場合は、307 を使用します。
誰もが抱く SEO の質問
302 は SEO 値を渡しますか?
より良い質問は次のとおりです: コードは動きの本当の意図と一致していますか?
Google は以前から、複数のリダイレクト タイプを処理できると述べてきましたが、それでも、移動が一時的であるか永続的であるかを反映するコードを使用する必要があります。実際には:
- 移動が永続的な場合は、301 または 308 を使用します
- 移動が一時的な場合は、302 または 307 を使用します。
間違ったコードで意図を「ハッキング」しようとすると、通常、利点よりも混乱が生じます。
チームが忘れているパフォーマンスに関する質問
ステータス コードの選択は、それを取り巻く リダイレクト アーキテクチャほど重要ではありません。完璧な 301 であっても、次のような問題が発生する場合には問題があります。
- 3 ホップのリダイレクト チェーン
- HTTP -> HTTPS -> 非 www -> 最終パス
- モバイルとデスクトップの動作に一貫性がない
- 古い URL を呼び出し続ける古い内部リンク
だからこそ、コード自体の選択と同じくらいリダイレクト QA が重要なのです。迅速なチェックが必要な場合は、ここで完全なリダイレクト パスをテストしてください。
レガシー インフラストラクチャを整理している場合は、公開前に リダイレクト チェーンとループ も確認してください。
UrlEdge で使用するもの
マーケティング ページ、サイトの移行、ドキュメントの移動、またはドメインの統合に UrlEdge を使用している場合:
- 長期的な URL 変更には Permanent 301 Redirects を使用します。
- 可逆的な移動には Temporary 302 Redirects を使用します。
- チームがポリシーレベルの明確性を必要とする場合は、リダイレクト タイプ ガイド をお読みください。
API をリダイレクトする場合、またはフォーム トラフィックとメソッドの保存が重要な場合は、ロールアウト前にそれを明確に文書化してください。通常、そこにあるリスクは SEO ではありません。アプリケーションの動作に支障をきたします。
よくある間違い
永久移動に 302 を使用する
これは、Web 上で最もよくある間違いです。これは通常、リダイレクトが急いで作成され、再アクセスされなかったために発生します。
短期キャンペーンに 301 を使用する
リダイレクトが一時的なものであることがわかっている場合は、一時的なものにしておきます。そうしないと、今後のロールバックが難しくなり、意図が曖昧になってしまいます。
リクエストメソッドのセマンティクスを無視します
元のリクエストが単なるページ読み込みではない場合、307 と 308 はエッジ ケースではなくなります。
コードを修正しますが、チェーンはそのままにします
1 つのクリーンなリダイレクトは、技術的に正しいリダイレクトを複数積み重ねたものよりも優れています。
よくある質問
SEO では 301 より 308 の方が優れていますか?
デフォルトではありません。通常のページ移行では、301 が最も一般的で実用的な選択肢です。メソッドの保存が要件の一部である場合は、308 を使用します。
307 は単に 302 の新しいものですか?
正確には違います。主な違いは、307 では元のリクエストのメソッドと本文の保持がより厳密であることです。
A/B テストに 302 を使用できますか?
はい、一時的なテストは、特に最終的な宛先が変更される可能性があることがわかっている場合に、302 スタイルのルーティングの最も明確な使用例の 1 つです。
ブログの移行には何を使用すればよいですか?
通常は 301。リダイレクト マップ、更新された内部リンク、チェーンと壊れたパスの検証と組み合わせます。
関連する UrlEdge ガイド
権威ある参考文献
関連記事
すべて見る
Firebase Dynamic Linksの代替: アプリとキャンペーンリンク移行
Firebase Dynamic Linksの終了後に、既存のQR、広告、メール、アプリ導線を失わないための移行方針を整理します。必要なのは、ブランドURL、デバイス別ルーティング、明示的なフォールバックです。

パスとUTMを保持してドメインを転送する方法
ドメイン変更やリブランド時に、パス、クエリ文字列、UTMパラメータを失わずに転送する方法を整理します。キャンペーン計測、商品URL、ドキュメントURLを壊さないための実装方針です。