HTTP 301 Moved Permanently
리다이렉트 상태 응답 코드는 요청한 리소스가 Location
헤더에 주어진 URL로 완전히 옮겨졌다는 것을 나타낸다. 브라우저는 이 페이지로 리다이렉트하고, 검색 엔진은 해당 리소스로 연결되는 링크를 갱신한다[검색엔진 최적화의 관점에서는 '원 콘텐츠가 새로운 URL로 옮겨졌다'(the link-juice is sent to the new URL)고 한다].
명세에서는 리다이렉트를 수행할 때 메소드(와 응답 본문)이 바뀌어서는 안 된다고 명시하고 있지만, 모든 유저 에이전트가 이를 따르는 것은 아니며 이러한 잘못된 소프트웨어는 아직도 찾아볼 수 있다. 그러므로 301
코드는 GET
과 HEAD
메소드의 응답으로만 사용하고, POST
메소드에 대해서는 메소드 변경이 명시적으로 금지된 308
Permanent Redirect
를 사용하는 것이 바람직하다.
상태
301 Moved Permanently
예제
클라이언트 요청
GET /index.php HTTP/1.1 Host: www.example.org
서버 응답
HTTP/1.1 301 Moved Permanently Location: http://www.example.org/index.asp
명세
Specification | Title |
---|---|
RFC 7231, section 6.4.2: 301 Redirect Permanently | Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content |
브라우저 호환성
BCD tables only load in the browser
이 페이지의 호환성 표는 구조적인 데이터로부터 생성되었습니다. 데이터에 기여하고자 하시면 https://github.com/mdn/browser-compat-data를 참조하셔서 pull request를 보내주시기 바랍니다.