307 Temporary Redirect
HTTP の 307 Temporary Redirect
はリダイレクトレスポンスステータスコードで、リクエストされたリソースが一時的に Location
で示された URL へ移動したことを示します。
このステータスを受信したブラウザーは、自動的に Location
ヘッダーの中の URL にあるリソースをリクエストし、ユーザーを新しいページへリダイレクトさせます。
このレスポンスを受け取った検索エンジンは、新しいリソースに元の URL へのリンクの属性を付与しないため、新しい URL に SEO の値が引き継がれません。
元のリクエストのメソッドと本文は、リダイレクトされたリクエストを行う際に再利用されます。
使用されるメソッドを GET
に変更したい場合は、代わりに 303 See Other
を使用してください。
これは PUT
メソッドへのレスポンスで、アップロードされたリソースではないところで「XYZ のアップロードに成功しました」のような確認メッセージを表示したい場合に便利です。
307
と 302
の違いは、 307
はリダイレクトされたリクエストが行われるときに、メソッドと本文が変更されないことが保証されることです。
302
では、古いクライアントは不正にメソッドを GET
に変更してしまいます。
307
と 302
レスポンスは、リクエストメソッドが GET
である場合は同等です。
ステータス
307 Temporary Redirect
例
移動したレスポンスに対する 307 レスポンス
次の GET
リクエストは、 307
リダイレクトとなるリソースに対して行われます。
Location
ヘッダーは、リダイレクト先のリソースの URL を提供します。
GET /en-US/docs/AJAX HTTP/2
Host: developer.mozilla.org
User-Agent: curl/8.6.0
Accept: */*
HTTP/2 307
location: /en-US/docs/Learn_web_development/Core/Scripting/Network_requests
content-type: text/plain; charset=utf-8
date: Fri, 19 Jul 2024 12:57:17 GMT
仕様書
Specification |
---|
HTTP Semantics # status.307 |
関連情報
- HTTP のリダイレクト
- HTTP レスポンスステータスコード
302 Found
: このステータスコードと同等ですが、GET
以外の時にメソッドが変更されるかもしれない。303 See Other
: 使用されるメソッドをGET
に変更する一時リダイレクト。301 Moved Permanently
: 永久リダイレクト