302 Found 【302 Moved Temporarily】 302リダイレクト / 302 redirect / HTTP 302
概要
302 Found(302 Moved Temporarily)とは、WebサーバからWebブラウザなどのクライアントへ送られるHTTPステータスコードの一つで、要求されたコンテンツが一時的に移転したことを知らせるもの。HTTPリダイレクト(転送)機能の一つで、移転先のURLが告知される。WebサーバとWebブラウザなどのクライアントの間ではHTTP(Hypertext Transfer Protocol)という通信規約(プロトコル)でデータ伝送を行っている。クライアントからの要求(リクエスト)に対してサーバは応答(レスポンス)を返すが、その際に現在の状態を示すHTTPステータスコードを通知する。
ステータスコードの300番台はリダイレクト(転送)関連の用途に割り当てられており、302番はHTTP 1.1以降は「Found」(発見した)、1.0では「Moved Temporarily」(一時的に移動した)となっている。クライアントが要求したコンテンツが他の場所に移転したことを意味し、「Location」ヘッダで移転先のURLを伝える。
コンテンツが何らかの事情で一時的に別の場所にあることを表し、サーバのメンテナンスやページ上の不具合などで一時的に他のページやサイトを利用してほしい場合などに用いられる。302 Foundを受信したクライアントは、自動的に移転先のURLへアクセスする。このような自動的な転送処理を「302リダイレクト」という。
一方、恒久的に新しい場所に移転したことを知らせたい場合は「301 Moved Permanently」を用いる。また、POSTメソッドやPUTメソッドなど、GETメソッド以外で要求するリソースの移転を(メソッドを変更せずに)知らせたい場合は「307 Temporary Redirect」を、POSTメソッドなどを受理した後に案内ページなどへGETメソッドでアクセスしてほしい場合は「303 See Other」を利用する。
(2023.1.20更新)