본문 바로가기
CS/개발환경

http 에러코드

by 연어바케트 2021. 10. 8.
반응형

1xx(정보) : 요청을 받았으며 프로세스를 계속한다. 

  • 100(Continue) 요청자는 요청을 계속해야한다. 요청의 첫 번째 부분을 받았으며 나머지를 기다리고 있음을 나타냄
  • 101(Switching Prococols) 요청자가 서버에 프로토콜 전황을 요청했으며 서버는 이를 승인하는 중이다. 
  • 102(Processing) 사용자가 수신요청을 하여 처리하고는 있지만 아직은 제대로 된 응답을 할 수 없는 상태.
  • 103(Early Hints) Link헤더와 함께 사용되며 주로 서버가 응답을 준비하는 동안 사용자가 사전 로딩을 할 수 있도록 하는 응답 코드

2xx(성공) : 요청을 성공적으로 받았으며 인식했고 수용했다. 

  • 200(OK) 성공적으로 처리했을 때 쓰임, 가장 일반적으로 볼 수 있는 HTTP상태
  • 201(Created) 요청이 성공적으로 처리되어서 리소스가 만들어졌음을 의미 
  • 202(Accepted) 요청이 받아들여졌지만 처리되지 않았음을 의미
  • 203(Non-Authoritative Information) 응답받은 메타정보가 서버에 저장된 원본과 동일하지는 않지만 로콜이나 다른 복사본에서 수집되었음을 알리는 응답코드. 이 경우에도 보통은 200 OK 응답코드가 203 Non-Authoritative Information 응답코드보다 우선적으로 응답.
  • 204(No Content) 성공적으로 처리했지만 컨텐츠를 제공하지 않음.
  • 205(Reset Content) 서버가 요청을 성공적으로 처리했지만 콘텐츠를 표시하지 않는다. 204 응답과 달리 이 응답은 요청자가 문서 보기를 재설정할 것을 요구한다. 
  • 206(Partial Content) 컨텐츠의 일부 부분만 제공. 보통 클라이언트에서 시작 범위나 다운로드할 범위를 지정한 경우 자동으로 해당 부분만 제공할 때 사용하는 코드.
  • 207(Multi Status) 여러 소스에서 여러 응답인 상태에서 적절한 정보를 사용자한테 제공할 수 있도록 하는 응답코드
  • 208(Already Reported) DAV 바인딩 멤버는 이미 응답의 앞 부분에 열거되어 있으며 다시 포함되지 않는다는 의미로 응답하는 응답코드.
  • 226(IM Used) 서버가 사용자의 GET 요청에 대한 리소스의 의무는 다했고, 현재 인스턴스에서 적용된 하나 이상의 인스턴스 조작 결과를 보낼 때 사용되는 코드.

3xx(리다이렉션) : 요청 완료를 위해 추가 작업 조치가 필요하다. 

  • 300(Multiple Choices) 서버에서 여러 개의 응답이 있음을 알릴 때 사용할 의도로 만들어짐, 정적 응답을 선택하는 방법은 표준화되지 않아 사용되지 않음.
  • 301(Moved Permanently) 영구적으로 컨텐츠가 이동했을 때 사용.
  • 302(Found) 일시적으로 컨텐츠가 이동했을 때 사용
  • 303(See Other) 서버가 사용자의 GET요청을 처리하여 다른 URL에서 요청된 정보를 가져올 수 있도록 응답하는 코드
  • 304(Not Modified) 200 다음으로 많이 볼 수 있는 HTTP상태. 이 경우 보통 브라우저에 캐시되어 있는 버전을 씀
  • 305(Use Proxy) 프록시를 사용하지 않으면 접근할 수 없는 컨텐츠에 사용할 목적으로 만듬. 이 응답 코드에는 요청자가 사용해야 하는 프록시 서버의 정보를 포함. 다만 보안상 이유로 이 응답코드를 인식하는 브라우저는 없고 현재 사용 중지된 비권장 응답코드.
  • 306(unused) 초기 HTTP/1.1까지만 해도 Switch Proxy요청으로 다음 요청시 지정한 프록시 서버를 사용하라는 응답 코드로 초안이 각성되었으나 정작 사용이 되지 않았고 지금은 305 Use Proxy 응답이 사용중지되어 문서에서 삭제, 예약코드로 있다. 
  • 307(Temporary Redirect) 302와 동일하게 일시적인 컨텐츠 이동을 나타낼때 사용되나, HTTP메소드의 변경을 허용하지 않는다. 
  • 308(Permanent Redirect) 301와 동일하게 영구적인 컨텐츠 이동을 나타낼때 사용되나, HTTP 메소드의 변경을 허용하지 않는다. 

4xx(클라이언트 오류) : 요청의 문법이 잘못되었거나 요청을 처리할 수 없다. 

  • 400(Bad Request) 요청 자체가 잘못되었을때 사용하는 코드
  • 401(Unauthorized) 인증이 필요한 리소스에 인증 없이 접근할 경우 발생. 사용할 때에는 반드시 브라우저에 어느 인증방식을 사용할 것인지 보냄. 단순히 권한이 없는 경우 이 응답 코드 대신 403 Forbieend을 사용
  • 402(Payment Required) 결제가 필요한 리소스에 결제없이 접근했을 경우 발생.
  • 403(Forbidden) 서버가 요청을 거부할 때 발생. 관리자가 해당 사용자를 차단했거나 서버에 index.html이 없는 경우에도 발생할 수 있다. 사용자가 리소스에 대한 필요 권한을 갖고 있지 않음.
  • 404(Not Found) 찾는 리소스가 없다는 뜻, 가장 흔하게 볼수 있는 오류 코드.
  • 405(Method Not Allowed) PUT이나 DELETE등 서버에서 허용되지 않은 메소드로 요청시 사용하는 코드. POST방식으로 요청을 받는 서버에 GET 요청을 보내는 경우, 또는 읽기 전용 리소스에 PUT 요청을 보내는 경우 제공.
  • 406(Not Acceptable) 요청은 정상이나 서버에서 받아들일 수 없는 요청일시 사용하는 코드. 보통 웹 방화벽에 걸리는 경우 이 코드가 반환
  • 407(Proxy Authentication Requied) 프록시 인증이 필요할 경우 사용하는 코드.
  • 408(Request Timeout) 요청 중 시간이 초과되었을때 사용하는 코드
  • 409(Conflict) 사용자의 요청이 서버의 상태와 충돌. 서버는 응답할 때 충돌에 대한 정보를 포함해야 한다. 
  • 410(Gone) 404와는 달리 찾는 리소스가 영원히 사라진 경우 사용하는 코드. 서버는 응답할 때 충돌에 대한 정보를 포함해야 한다.
  • 411(Length Required) 사용자가 서버로 요청할 때 헤더에 Content-Length필드에 값이 없이 요청해서 서버에서 응답을 거부 할 때 쓰는 코드. 서버는 유효한 콘텐츠 길이 헤더 입력란 없이는 요청을 수락하지 않음
  • 412(Precondition Failed) 사용자가 서버로 조건부 요청을 할 때 서버의 전제조건과 사용자의 전제조건이 맞지 않아 서버에서 응답 거부를 할때 쓰는 코드. 서버가 요청자가 요청시 부과한 사전조건을 만족하지 않음
  • 413(Payload Too Large) 요청이 너무 커서 서버가 처리할 수 없음, 요청본문이 너무 긴 경우 발생.
  • 414(URI Too Long) 요청 URI가 너무 길어 서버가 처리할 수 없음.
  • 415(Unsupported Media Type) 사용자가 요청한 미디어타입이 서버에서 지원하지 않는 타입이라서 응답을 거부
  • 416(Requested Range Not Satisfiable 요청 헤더의 Range로 지정한 범위가 잘못되었을 때 발생. 요청이 페이지에서 처리할 수 없는 범위에 해당되는 경우.
  • 417(Expectation) 요청 헤더의 Expect값이 서버에서는 적절하지 못한다는 것을 응답.

5xx(서버 오류) : 서버가 명백히 유효한 요청에 충족을 실패했다. 

  • 500(Internal Server Error) 서버에 오류가 발생하여 요청을 수행할 수 없음. 보통 설정이나 퍼미션 문제, 
  • 501(Not Implemented) 서버가 요청을 수행하는데 필요한 기능을 지원하지 않는 경우 사용. 
  • 502(Bad Gateway) 게이트웨이가 연결된 서버로부터 잘못된 응답을 받았을때 사용. 서버가 게이트웨이나 프록시 역할을 하고 있거나 또는 업스트립 서버에서 잘못된 응답을 받음.
  • 503(Service Temporarily Unavailable) 서비스를 일시적으로 사용할 수 없을 때 사용. 주로 웹서버 등이 솨부하로 다운되었을 때 사용. 이는 대개 일시적인 상태
  • 504(Gateway Timeout) 게이트웨이가 연결된 서버로부터 응답을 받을 수 없을 때 사용.
  • 505(HTTP Version Not Supported) HTTP 버전을 서버가 처리할 수 없을 경우. 

 

 


참고

- 위키피디아

- 나무위키

반응형

댓글