HTTP의 상태 코드
http의 상태 코드는 리퀘스트 처리결과에 대해서 알려주는 코드이다. 정상적으로 처리된 경우 평소와 같이 이용하기 때문에 어떤 코드인지 알 수 없지만(f12 개발자 모드로 확인할 수 있다.) 흔히 503, 404 같은 상태 코드는 흔히 봤을 것이며 이런 코드는 페이지 자체를 못 띄우고 다른 이미지나 텍스트를 띄우기 때문에 흔히 봤을 것이다. 기본적인 상태 코드는 RFC2616 문서에 정의되어 있고 이외 확장된 상태 코드(RFC6585 문서에 정의)도 존재한다. RFC2616에 대해서만 다루며 상태 코드를 응답 코드라고도 하며 100번대는 거의 볼 경우가 없다
상태 코드 목록
2XX Success
200 OK
리퀘스트가 성공적으로 수행되었음을 알리는 코드이다. 메서드 별로 돌아오는 정보가 다르다.
202 Accepted
리퀘스트가 처리를 위해 접수하였으나 처리가 되지 않은 상태
203 Non-Authoritative infromation
비 인증된 정보. 엔티티 헤더의 메타 데이터가 서버에서 사용할 수 없음
204 No Content
리퀘스트를 처리했으나 응답할 데이터가 없음
205 Reset Content
리퀘스트를 처리하였고 리퀘스트를 발송하게 한 문서를 지워야 함
206 Partial Content
리소스에 대한 부분적 Get 리퀘스트를 완료하였고 Range 헤더를 표시하여야 한다.
3XX Redirection
300 Multiple choice
리퀘스트 리소스가 자신의 특유 위치를 가지고 있는 것 중 하나와 대응되며 리퀘스트를 해당 위치로 재설정할 수 있도록 사용자 주도의 협상 정보를 제공
301 Moved Permanently
리퀘스트한 리소스에 대해 새로운 URI가 영구히 변경되었으며 앞으로 해당 URI로 재연결 할 것
302 Moved Temporaily
리퀘스트한 리소스가 임시 URI로 변경됨. 리다이렉션이 변경될 수 있어 계속 리퀘스트 URI를 사용해야 함
303 See Other
리퀘스트한 리소스가 다른 URI에 있으며 해당 리소스를 조회해야 함
304 Not Modified
접근할 수 있으나 문서가 변경되지 않음
305 Use Proxy
리퀘스트한 리소스를 Location 필드에 명시된 프록시를 통하여 접근해야 함
4XX Client Error
400 Bad Request
잘못된 형식의 리퀘스트
401 Unauthorized
인증되지 않음. 사용자 인증을 요구
403 Forbidden
리퀘스트를 이해했으나 처리를 거부함
404 Not Found
해당 리퀘스트의 URI를 찾을 수 없음. 서버가 URI존재 자체를 부정하기 위해 사용하는 경우도 있음
405 Method Not Allowed
해당 리퀘스트 메서드를 해당 URI에서 사용할 수 없다
406 Not Acceptable
접수할 수 없음. Head 리퀘스트가 아니라면 응답에 엔티티를 포함함
407 Porxy Authhentication Required
프록시 인증 필요. 프록시에 먼저 인증할 것
408 Request Timeout
요청한 리퀘스트가 시간 안에 응답할 수 없음
409 Conflict
충돌로 인해 리퀘스트를 완료할 수 없음
410 Gone
리퀘스트한 리소스가 서버에 더 이상 없으며 주소를 알 수 없음
411 Length Required
Content-Length가 없어 리퀘스트가 거부됨
412 Precondition Failed
서버가 지정한 조건의 거짓임
413 Request entity Too Large
서버가 처리할 수 있는 크기를 초과하여 리퀘스트 거부
414 Request-URI Too Long
URI가 서버가 인식할 수 있는 것보다 김
415 Unsupported media type
리퀘스트된 미디어 형식이 해당 리소스에서는 지원되지 않는 형식
416 Requested Range Not Satisfiable
유효하지 않은 Range
417 Expectation Failed
Expect 필드를 서버에서 충족할 수 없음
5XX 서버 오류
501 Not Implemented
해당 리퀘스트를 처리할 기능이 없음
502 Bad Gateway
게이트웨이, 프록시로 활동한 서버가 리퀘스트를 완료하려 할 때 상대 서버로부터 유효하지 않은 응답을 받음
503 Service Unavailable
서버가 현재 잠정적으로 요구를 처리할 수 없다.
504 Gateway Timeout
게이트웨이나 프록시 서버가 리퀘스트를 시간 내 처리하려 할 때 상대 서버로부터 응답을 얻지 못함
505 HttpVersion Not supported
서버가 해당 버전의 http를 지원하지 않거나 지원을 거부
대부분의 상태 코드는 낯설 것이다. 이미지나 텍스트 형식을 보여주지 않거나 자동적으로 처리, 이외 해당 코드를 응답할 경우가 흔하지 않기 때문이다. 404 Not Found 503 Unable 등은 흔히 봤을 것이다. 해당 상태 코드들은 오류로 인한 코드로 사용자가 잘못 URI를 입력하였거나 서버 자체가 다운된 경우 이런 코드들을 보게 된다.
'ComputerScience > Network' 카테고리의 다른 글
Gateway 게이트웨이란? (0) | 2021.06.25 |
---|---|
HTTP 기본 개념 (0) | 2021.06.21 |
네트워크 장비 스위치 Switch 와 종류 (2) | 2021.06.06 |
NAT 개념과 종류 Network Address Translation (0) | 2021.05.16 |
DNS, DNS 테이블과 DNS 캐싱이란? (0) | 2021.05.14 |
댓글