WEB,WAS

[Network] HTTP 오류코드 비교 (301, 302, 308)

IT-PAPA 2024. 1. 29. 06:51
반응형
  • HTTP 301 Moved Permanently:
    • 응답 상태 코드 301은 영구적인 이동을 나타내며, 요청한 리소스가 새로운 위치로 영구적으로 이동했음을 의미합니다.
    • 클라이언트는 이후에 해당 리소스에 대한 모든 요청을 새로운 위치로 보내야 합니다.
    • 브라우저는 캐시에서 해당 리소스를 지우고 새로운 위치에서 데이터를 가져와야 합니다.
  • HTTP 302 Found (or 307 Temporary Redirect):
    • 응답 상태 코드 302는 임시적인 이동을 나타냅니다. 302는 이후 요청에서도 원래의 주소를 사용해야 함을 의미합니다.
    • 클라이언트는 리소스를 임시적으로 다른 위치로 찾아야 하며, 검색 엔진 등은 기존의 주소를 유지해야 합니다.
    • 주의: 몇몇 클라이언트는 302를 POST 요청에 대한 GET으로 변환하므로 주의가 필요합니다.
  • HTTP 308 Permanent Redirect:
    • 308은 301과 유사하게 영구적인 이동을 나타냅니다. 그러나 308은 리다이렉트된 요청이 GET 메서드로 유지되어야 함을 강제합니다.
    • 클라이언트는 이후에 해당 리소스에 대한 모든 요청을 새로운 위치로 보내야 하며, 메서드가 변경되어서는 안 됩니다.
    • 이는 기존의 301 리다이렉트와 달리 메서드의 변경이 허용되지 않는다는 점에서 차이가 있습니다.
상태 코드 목적 특징
301 Moved Permanently 리소스의 영구적인 이동 - 클라이언트는 새로운 URL로 요청을 보내야 함
- 브라우저는 해당 리소스의 캐시를 업데이트하고, 검색 엔진은 새로운 URL을 인덱싱함
302 Found (또는 302 Found) 리소스의 일시적인 이동 - 클라이언트는 새로운 URL로 임시로 이동하며, 원래 URL을 계속 사용함
- 브라우저는 캐시를 업데이트하지만, 검색 엔진은 기존 URL을 계속 사용할 수 있음
308 Permanent Redirect 리소스의 영구적인 이동 - 클라이언트는 새로운 URL로 요청을 보내야 함
- 브라우저는 캐시를 업데이트하고, 검색 엔진은 새로운 URL을 인덱싱함
- 301과 달리, 요청 메서드가 변경되지 않음 (GET 요청은 GET으로, POST 요청은 POST로 유지됨)

요약하면, 301은 영구적인 이동을 나타내며, 302는 임시적인 이동을 나타냅니다. 308은 301과 유사하지만 메서드의 변경을 허용하지 않는다는 점에서 차이가 있습니다.

728x90
반응형
LIST