개요
301은 주로 인터넷 프로토콜(HTTP)에서 사용되는 상태 코드로, “Moved Permanently”(영구 이동)라는 의미를 가진다. 클라이언트가 요청한 자원이 영구히 다른 URI(Uniform Resource Identifier)로 이동했음을 나타내며, 서버는 새 주소를 Location 헤더에 포함시켜 응답한다.
정의 및 동작 방식
- HTTP 상태 코드: 3xx 클래스에 속하며, 클라이언트가 추가 동작을 수행해야 함을 알린다.
- 301 Moved Permanently: 서버는 요청된 URI를 새 위치로 영구적으로 옮겼으며, 이후 동일한 요청에 대해 새 URI를 사용해야 한다.
- 클라이언트 처리: 대부분의 웹 브라우저와 검색 엔진은 301 응답을 받으면 자동으로 새로운 URL로 재요청하고, 기존 URL에 대한 캐시를 업데이트한다.
주요 사용 사례
- URL 재구성: 도메인 변경, 경로 정리, HTTPS 전환 등에서 기존 URL을 새 URL로 영구 이동시킬 때 활용된다.
- 검색 엔진 최적화(SEO): 301 리다이렉트를 통해 기존 페이지의 랭킹과 백링크 가치를 새 페이지로 전달한다는 점에서 중요하다.
- 웹 애플리케이션 마이그레이션: 서비스 이전 시 기존 트래픽을 손실 없이 새로운 인프라로 전환한다.
역사
301 코드는 원래 HTTP/1.0 사양(1996년)에서 정의되었으며, 이후 HTTP/1.1(1999년)에도 동일하게 포함되었다. RFC 7231(2014년)에서는 301 코드의 의미와 Location 헤더 사용법을 명확히 규정한다.
관련 코드
- 302 Found: 일시적 이동을 나타낸다.
- 303 See Other: GET 요청으로 다른 리소스를 조회하도록 권장한다.
- 307 Temporary Redirect, 308 Permanent Redirect: 메서드 유지 여부와 영구성 차이를 보완한다.
기타 의미
- 지역 번호: 미국 메릴랜드 주와 워싱턴 D.C. 주변 지역을 포함하는 전화 구역 번호가 301이다.
- ISBN 접두사: 일부 출판물에서 ISBN의 국가/언어 그룹을 나타내는 부분에 301이 사용될 수 있다.
참고 문헌
- RFC 7231, “Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content”.
- W3C, “HTTP Status Code Definitions”.
비고
본 항목은 301이 널리 알려진 기술용어(HTTP 상태 코드) 및 제한적인 다른 용도(전화 구역 번호 등)로 사용되는 경우를 기술한다. 추가적인 문화적·역사적 의미에 대해서는 현재 신뢰할 만한 공개 자료가 부족하다.