302와 303의 차이

정은경·2022년 4월 7일
1

질문

로그인한 사용자만 접근할 수 있는 페이지가 있다.
성공적으로 로그인하고 나서, "로그인한 사용자만 접근할 수 있는 페이지"로 redirect 해준다.
이 때의 HTTP RESPONSE의 STATUS 코드는 무엇이 적합할까? 302? 303?

대답

결론은!
성공적으로 로그인하고 나서, "로그인한 사용자만 접근할 수 있는 페이지"로 redirect 303 해준다.

REDIRECTION STATUS CODE
0) 300 Multiple Choice
메서드변경 ? / ? / 캐시O / 선택 사항이 복수인 경우
1) 301 Moved Permanently
메서드변경O / 영구적 / 캐시O / 도메인 전송,웹사이트이전,HTTPS
2) 302 Found
메서드변경O / 일시적 / 캐시:지시에따름 / 일시적 관리,모바일기반전송
3) 303 See Ohter
메서드변경O / 영구적 / 캐시X / 로그인 후 페이지 전환
4) 304 Not Modified
5) 305 Use Proxy
6) 306 unused
7) 307 Temporary Redirect
메서드변경 ? / 일시적 / 캐시:지시에따름 / RFC 7231에서 추가
8) 308 Permanent Redirect
메서드변경 ? / 영구적 / 캐시O / RFC 7538에서 추가

메서드 변경이란?
첫 번째 요청이 POST이고, 두 번째 이후에 GET이라 HEAD를 사용할 경우에 사용자에게 확인할 필요 없이 실시할 수 있는지를 의미

  • 301/308: 요청된 페이지가 다른 장소로 이동(영구적으로 이동)했을 때 사용한다. 검색 엔진도 이 응답을 받으면 기존 페이지의 평가를 새로운 페이지로 계승한다. (구글은 301 사용을 권장)
  • 302/307: 일시적인 이동(예: 모바일 전용 사이트로 이동하거나 관리 페이지를 표시)
  • 303: 요청된 페이지에 반환활 콘텐츠가 없거나 혹은 원래 반환할 페이지가 따로 있을 때, 그쪽으로 이동시키려고 사용한다. (예: 로그인 페이지를 사용해 로그인한 후 원래 페이지로 이동하는 경우)

Reference

profile
#의식의흐름 #순간순간 #생각의스냅샷

0개의 댓글