기초 지식

HTTP 상태 코드 정리

효니님 2024. 7. 31. 16:26
728x90
반응형

 

HTTP 상태 코드란?

클라이언트는 웹 브라우저나 앱을 통해 서버에 요청을 보내고,

서버는 그 요청에 대해 적절한 응답을 보내는데, 이 응답의 상태를 HTTP 상태 코드로 전달한다.

HTTP 상태 코드는 3자리 숫자로 구성되며, 이 숫자는 응답의 상태를 나타낸다.

응답은 5개의 그룹으로 나뉜다.

 

1xx (정보 응답)  요청이 수신되었으며 처리 중이라는 정보를 제공
2xx (성공 응답) 요청이 성공적으로 처리되었음을 나타냄
3xx (리디렉션 메세지) 요청을 완료하기 위해 추가 작업이 필요함을 나타냄
4xx (클라이언트 오류 응답) 요청에 오류가 있어 서버가 요청을 처리할 수 없음을 나타냄
5xx (서버 오류 응답) 서버가 요청을 처리하는 동안 오류가 발생했음을 나타냄

 

 

 

1xx (정보 응답)

1xx 상태 코드는 요청이 수신되었으며, 처리가 진행 중임을 알리는 정보성 응답이다.

상태 코드 상태 메세지 설명
100 Continue 클라이언트가 서버로 보낸 요청에 문제가 없으니 다음 요청을 이어서 보내도 된다는 것을 의미한다.
101 Switching Protocols 서버가 클라이언트의 프로토콜 변경 요청을 수용했다는 의미다.

 

 

2xx (성공 응답)

2xx 상태 코드는 클라이언트의 요청이 성공적으로 처리되었음을 나타낸다.

상태 코드 상태 메세지 설명
200 OK 청이 성공적으로 처리되었으며, 서버가 요청한 데이터나 결과를 반환한다.
201 Created 요청이 성공적으로 처리되었으며, 새로운 리소스가 생성되었음을 나타낸다. 일반적으로 POST 요청 후 또는 일부 PUT 요청 후에 전송된 응답이다.
202 Accepted 요청을 처리하기 위해 수락되었으나, 해당 요청에 대해 처리 중이거나 처리가 시작되지 않았을 수 있다는 것을 의미한다.
204 No Content 요청이 성공적으로 처리되었으나 응답 본문이 없음을 나타낸다.
주로 PUT 요청 후 사용됨.

 

200 OK

요청이 성공했습니다. "성공"의 결과 의미는 HTTP 메서드에 따라 달라진다.

GET: 리소스를 가져와서 메시지 본문에 담아 전송함.

HEAD: 표현 헤더는 메시지 본문 없이 응답에 포함된다.

PUT 또는 POST: 작업 결과를 설명하는 리소스가 메시지 본문에 포함되어 전송된다.

TRACE: 메시지 본문에는 서버가 수신한 요청 메시지가 포함된다.

 

3xx (리디렉션 메시지)

클라이언트가 요청한 리소스의 새 위치로 이동해야 한다는 것을 의미한다.

상태 코드 상태 메세지 설명
301 Moved Permanently 요청한 리소스가 영구적으로 새로운 위치로 이동했음을 나타낸다. Location 헤더에 새로운 URL이 포함된다.
302 Found 요청한 리소스가 일시적으로 다른 URL로 이동했음을 나타낸다. 클라이언트는 Location 헤더에 제공된 URL로 리다이렉션된다.
304 Not Modified 클라이언트가 요청한 리소스가 변경되지 않았음을 나타낸다. 캐시된 버전을 사용할 수 있다.

 

 

4xx (클라이언트 에러 응답)

클라이언트의 잘못된 요청을 의미한다.
주로 요청이 잘못되었거나 권한이 부족할 때 발생한다

상태 코드 상태 메세지 설명
400 Bad Request 요청이 잘못되었거나 형식이 올바르지 않아 서버가 이해할 수 없음을 나타낸다.
401 Unauthorized 인증이 필요하며, 클라이언트가 제공한 인증 정보가 부족하거나 잘못되었음을 나타낸다.
403 Forbidden 서버가 요청을 이해했지만, 클라이언트가 리소스에 접근할 권한이 없음을 나타낸다.
404 Not Found 요청한 리소스를 서버가 찾을 수 없음을 나타낸다. URL이 잘못되었거나 리소스가 삭제되었을 수 있다.
405 Method Not Allowed 요청에 사용된 HTTP 메소드가 리소스에 대해 허용되지 않음을 나타낸다.
408 Request Timeout 라이언트가 서버에 요청을 보내는 데 너무 오랜 시간이 걸려 타임아웃이 발생했음을 나타낸다.

 

 

5xx (서버 에러 응답)

서버에서 요청을 처리하는 중에 오류가 발생했음을 나타낸다.

상태 코드 상태 메세지 설명
500 Internal Server Error 서버에서 예기치 않은 오류가 발생했음을 나타낸다. 서버 측에서 처리가 실패했을 때 사용됨.
501 Not Implemented 서버가 요청한 메소드를 지원하지 않음을 나타낸다.
502 Bad Gateway 서버가 게이트웨이 또는 프록시로서 다른 서버로부터 잘못된 응답을 받았음을 나타낸다.
503 Service Unavailable 서버가 일시적으로 사용할 수 없거나 유지보수 중임을 나타낸다. 보통 서버 과부하나 유지보수 작업으로 인해 발생한다.
504 Gateway Timeout 서버가 게이트웨이 또는 프록시로서 다른 서버로부터 응답을 받는 데 시간이 초과되었음을 나타낸다.

 

 

MDN | HTTP 상태 코드

 

HTTP 상태 코드 - HTTP | MDN

HTTP 응답 상태 코드는 특정 HTTP 요청이 성공적으로 완료되었는지 알려줍니다. 응답은 5개의 그룹으로 나누어집니다: 정보를 제공하는 응답, 성공적인 응답, 리다이렉트, 클라이언트 에러, 그리고

developer.mozilla.org

 

 

728x90
반응형