HTTP 응답 상태 코드 302 Found는 URL 리디렉션을 수행 하는 일반적인 방법입니다 . HTTP/1.0 사양(RFC 1945)은 초기에 이 코드를 정의하고 "Found"가 아닌 "Moved Temporarily"라는 설명 문구를 제공했습니다.
이 상태 코드가 포함된 HTTP 응답은 Location 헤더 필드에 URL을 추가로 제공합니다 . 이것은 사용자 에이전트 (예: 웹 브라우저)가 위치 필드에 지정된 새 URL에 대해 두 번째 요청을 하도록 초대하는 것입니다 . 최종 결과는 새 URL로 리디렉션됩니다.
많은 웹 브라우저는 이 표준을 위반하는 방식으로 이 코드를 구현하여 원래 요청에 사용된 유형(예: POST ) 에 관계없이 새 요청의 요청 유형을 GET 으로 변경했습니다. [1] 이러한 이유로 HTTP/1.1(RFC 2616)은 새로운 상태 코드 303 과 307을 추가 하여 두 동작 사이를 명확하게 했습니다. 303은 요청 유형을 GET으로 변경하도록 지시하고 307은 요청 유형을 원래 전송된 대로 유지합니다. 이러한 명확성이 제공되는 더 큰 명확성에도 불구하고 302 코드는 HTTP/1.1 사양을 구현하지 않는 브라우저와의 호환성을 유지하기 위해 여전히 웹 프레임워크에 사용됩니다. [2]
결과적으로 RFC 7231(RFC 2616 업데이트)은 사용자 에이전트가 POST를 GET으로 다시 작성할 수 있도록 정의를 변경합니다.
클라이언트 요청:
GET /index.html HTTP / 1.1
호스트 : www.example.com
서버 응답:
HTTP / 1.1 302 발견
위치 : http://www.iana.org/domains/example/