INDEX
307 Temporary Redirectについて
307 Temporary Redirectの概要
| 一時的なリダイレクトを示す(リクエストメソッド保持)HTTPステータスコード | ||
|
307 Temporary Redirect 概要 307 Temporary Redirectは、リクエストされたリソースが一時的に別のURLで利用可能であることを示すHTTPステータスコードです。このコードは、 |
||
| クライアントは提供された情報を元に選択を行い、適切なリソースにアクセスする必要があります。 |
307 Temporary Redirectはどのような時に使用されるか
- リソースが一時的に別の場所で利用可能である場合
- 元のリクエストメソッドを保持したままリダイレクトする必要がある場合
- 一時的なURL変更を通知しつつ、クライアントの操作を保持したい場合
SEOに関する影響
307リダイレクトは一時的なリダイレクトであり、検索エンジンは通常、元のURLをインデックスします。長期間307リダイレクトを使用すると、SEO評価が分散する可能性があるため、恒久的な変更の場合は308 Permanent Redirectや301 Moved Permanentlyを使用することが推奨されます。
307 Temporary Redirectの事例
一時的なURL変更
POST /submit-form HTTP/1.1 Host: example.com
レスポンス例:
HTTP/1.1 307 Temporary Redirect Location: https://example.com/temp-form
解説: サイトメンテナンスやリソースの一時的な移動時に、元のフォームデータやリクエスト内容を保持したまま、クライアントを一時的なリソースに誘導します。この場合、クライアントはリクエストメソッド(POST)をそのまま維持して再送信します。
APIリクエストの一時的なリダイレクト
PUT /resource/123 HTTP/1.1 Host: example.com
レスポンス例:
HTTP/1.1 307 Temporary Redirect Location: https://api.example.com/resource-temp/123
解説: APIでの操作中に、一時的に別のエンドポイントを利用する必要がある場合に307ステータスコードを使用します。リクエストメソッド(PUT)を維持するため、クライアントはリクエスト内容をそのまま新しいエンドポイントに送信します。
利用における注意点
307リダイレクトを設定する際の注意点:
- リクエストメソッドの保持
クライアントが元のリクエストメソッドを使用する必要があることを理解して設定します。 - 適切な
Locationヘッダーの指定
リダイレクト先のURLが正しいリソースを指していることを確認してください。
関連するHTTPステータスコードとの比較
307 Temporary Redirectと関連性のあるステータスコードについて解説します。
- 302 Found: 一時的なリダイレクトを示しますが、リクエストメソッドがGETに変更される場合があります。
- 308 Permanent Redirect: 恒久的なリダイレクトであり、元のリクエストメソッドを保持する点で307と似ています。
これらの違いを理解することで、適切な用途で307ステータスコードを利用できます。