WEB

HTTP 상태코드 종류와 의미

성코 2023. 8. 4. 00:14

 

1. HTTP 상태코드란?

2. HTTP 상태코드 종류와 의미


HTTP 상태코드

HTTP 상태코드는 클라이언트가 서버에 보낸 요청(request)에 대해 어떻게 처리되었는지를 상태코드로 응답(response)에 담아보낸다. 보통 100번대에서 500번대를 사용하는데 크게 다음과 같이 나눌 수 있다. 

  • 1xx (조건부 응답, Informational) : 요청이 수신되어 처리중
  • 2xx (성공, Successful) : 요청 정상 처리
  • 3xx (리다이렉션 완료, Redirection) : 클라이언트는 요청을 완료하려면 추가 동작을 취해야함
  • 4xx (요청 오류, Client Error) : 클라이언트 오류, 잘못된 문법 등으로 서버가 요청을 수행할 수 없음
  • 5xx (서버 오류, Server Error) : 서버가 정상 요청을 처리하지 못함

HTTP 상태코드 종류와 의미

  • 1xx

100번대는 요청이 수신되어 처리중이라는 뜻인데 거의 사용하지 않는다고 한다.

  • 2xx

200번대는 요청이 성공했음을 의미한다.

200 : 요청 성공 (OK)
201 : 요청 성공해서 새로운 리소스 생성됨 (Created)
202 : 요청이 접수되었으나 처리가 완료되지 않았음 (Accepted)
204 : 서버가 요청을 성공적으로 수행했지만, 응답 페이드로 본문에 보낼 데이터가 없음 (No Content)
  • 3xx

300번대는 리다이렉션인데, 이는 location 헤더가 있으면 location 위치로 자동 이동하는 것을 리다이렉트라고 한다.

301 : 리다이렉트시 요청 메소드가 GET으로 변하고, 본문이 제거될 수 있음 (Moved permanently)
302 : 리다이렉트시 요청 메소드가 GET으로 변하고, 본문이 제거될 수 있음 (Found)
303 : 리다이렉트시 요청 메소드가 GET으로 변경 (See Other)
304 : 캐시를 목적으로 사용 (Not Modified)
307 : 리다이렉트시 요청 메소드와 본문 유지 (요청 메소드를 변경하면 안됨, Temporary Redirect)
308 : 리다이렉트시 요청 메소드와 본문 유지 (처음 POST를 보내면 리다이렉트도 POST 유지, PerManent Redirect)
  • 4xx

400번대는 클라이언트 측에서 오류가 발생했다고 알려주는 것이다.

400 : 클라이언트가 잘못된 요청을 해서 서버가 요청을 처리할 수 없음 (Bad Request)
401 : 클라이언트가 해당 리소스에 대한 인증이 필요함 (unauthorized)
403 : 서버가 요청을 이해했지만 승인을 거부함 (Forbidden)
404 : 요청 리소스를 찾을 수 없음 (Not Found)
  • 5xx

500번대는 서버 측에서 오류가 발생했다고 알려주는 것이다. 

500 : 서버 문제로 오류 발생, 애매하면 500번 오류 (Internal Server Error)
503 : 서비스 이용 불가 (Service Unavailable)