본문 바로가기

기타

HTTP 응답 상태 코드(Status Code) 정리

HTTP 응답 상태코드에대해서 정리해보려고한다.

 

 

우선 HTTP 상태코드는 다섯 가지의 클래스로 구분되며 전체 코드는 3자리를 가지고있으며 첫번째 숫자는
클래스를 의미한다. 

 

  • 1XX (조건부 응답)
  • 2XX (성공)
  • 3XX (리다이렉션)
  • 4XX (요청 오류)
  • 5XX (서버 오류)

 

 

 

1XX

보통 100번대의 상태코드를 접하기는 쉽지않다
  • 100 - Continue
    서버에서 요청의 첫 번째 부분을 받고 나머지를 기다리고있음을 의미한다.
  • 101 - Switching Protocol
    클라이언트가 서버에 프로토콜 전환을 요청하여 서버가 승인을 진행하고 있는 상태
  • 102 - Processing

 

2XX

클라이언트가 요청한 동작 및 작업을 서버가 성공적으로 수행한 상태를 의미한다.
  • 200 - OK
  • 201 - Created
  • 202 - Accepted
  • 203 - Non-Authoritative Information
  • 204 - No-Content
  • 205 - Reset Content
  • 206 - Partial Content

 

3XX

클라이언트는 요청을 마치기 위해서 추가적인 조치 및 동작이 필요한 상태를 의미한다
  • 300 - Multiple Choice
    요청에 대해서 하나 이상의 응답을 해야하는 상태 
  • 301 - Moved Permanently 
    요청한 리소스의 URI가 변경되었음을 의미
  • 302 - Found
    URI가 일시적으로 변경되었음을 의미
  • 303 - See Other
    클라이언트가 요청한 리소스를 다른 URI에서 GET요청을 통해 얻어야할때 서버가 클라이언트로 보낸 응답
  • 304 - Not Modified
    캐시를 목적으로 사용
  • 305 - Use Proxy
    요청한 응답은 프록시를 통해서 접속해야하는것을 의미
  • 306 - Unused
    사용되지않음
  • 307 - Temporary Redirection
    현재 서버가 다른 위치의 페이지로 요청에 응답하고 있지만 요청자는 향후 요청 시 원래 위치를 계속 사용해야 함
  • 308 - Permanent Redirection 

 

4XX

클라이언트가 서버에 보낸 요청이 잘못된 상태를 의미한다.

 

  • 400 - Bad Request
    잘못된 요청으로 서버가 인식하지 못한 상태
  • 401 - Unauthorized
     Unauthrized로 표기되어있지만 실제로는 Unathenticated에 더 가깝다. 즉, 요청에대해서 인증이 필요할때 나오는 상태코드이다.
  • 402 - Payment Required
    추후 디지털 결제 시스템에 사용을 위해 예약된 상태코드.  
  • 403 - Forbidden
    서버가 요청을 거부한 상태, 클라이언트가 리소스에 대한 권한을 가지고 있지 않은상태
  • 404 - Not Found
    서버가 요청한 페이지, 리소스를 찾을 수 없는 상태
  • 405 - Method Not Allowed
    요청에 사용된 메서드를 사용할 수 없는 상태
    예) POST방식으로 요청받는 서버에 GET으로 요청했을 경우
  • 406 - Not Acceptable
    요청한 콘텐츠 타입으로 응답할 수 없을때
  • 407 - Proxy Authentication Required
    401과 비슷하지만 Proxy를 위한 인증
  • 408 - Request Timeout
    서버의 요청대기가 시간을 초과한 경우 발생
  • 409 - Conflict 
    서버의 상태와 요청이 충돌한 경우

나머지 코드들은 아래에서 확인

 

5XX

클라이언트가 보낸 요청을 서버에서 수행하지 못한 경우의 상태를 의미한다

 

  • 500 - Internal Server Error
    서버에 오류가 발생하여 요청을 수행할 수 없는 상태
  • 501 - Not Implemented
    서버가 요청을 수행할 수 있는 기능이 없는 상태
  • 502 - Bad Gateway
    서버가 게이트웨이로부터 잘못된 응답을 받았을 경우
  • 503 - Service Unavailable
    서버가 요청을 수행할 수 없는 상태로 서버 과부하 등 서버 작동이 중단된 상태 
  • 504 - Gateway Timout
    상위 서버에서 제때 요청을 받지 못한 상태
  • 505 - HTTP Version Not Supported
    서버가 요청에 사용된 HTTP 프로토콜 버전을 지원하지 않는 경우

나머지 코드들은 아래에서 확인

'기타' 카테고리의 다른 글

CI/CD의 개념  (0) 2021.10.20
MVC패턴이란???  (0) 2021.09.10
REST API란  (0) 2021.08.30