2023. 7. 5. 14:57ㆍ브라우저&네트워크
100 Continue
- 계속 진행하라.
- 임시 응답으로 지금까지 상태가 괜찮으며 클라이언트가 계속해서 요청을 하거나 요청을 완료한 경우엔 무시해도 되는 것을 알려준다.
101 Switching Protocol
- 프로토콜을 전환하라.
- 클라이언트가 보낸 Upgrade 요청 헤더에 대한 응답에 들어가며 서버에서 프로토콜을 변경할 것임을 알려준다.
102 Processing
- (WebDAV) 처리 중이다.
- 서버가 요청을 수신하였으며 이를 처리하고 있지만, 아직 제대로 된 응답을 알려줄 수 없음을 알려준다.
103 Early Hints
- 주로 Link 헤더와 함께 사용되며, 서버가 응답을 준비하는 동안 사용자 에이전트가 사전 로딩을 시작할 수 있도록 한다.
200 OK
- 서버가 요청을 성공적으로 처리하였다.
- 요청이 성공적으로 되었을때, 성공의 의미는 HTTP 메소드에 따라 달라진다.
- GET : 리소스를 불러와서 메시지 바디에 전송되었습니다.
- HEAD : 개체 헤더가 메시지 바디에 있습니다.
- PUT & POST : 수행 결과에 대한 리소스가 메시지 바디에 전송되었습니다.
- TRACE : 메시지 바디는 서버에서 수신한 요청 메시지를 포함하고 있습니다.
201 Created
- 요청이 성공적이었으며 그 결과로 새로운 리소스가 생성되었습니다.
- 이 요청은 일반적으로 POST, 또는 일부 PUT 요청 이후 따라온다.
202 Accepted
- 요청을 수신하였지만 그에 응하여 행동할 수 없습니다.
- 이 응답은 요청 처리에 대한 결과를 이후에 HTTP 로 비동기 응답을 보내는 것에 대해서 명확하게 명시하지 않는다.
- 다른 프로세스에서 처리 또는 서버가 요청을 다루고 있거나 배치 프로세스를 하고 있는 경우를 위해 만들어졌다.
203 Non-Authoritative Information
- 응답 헤더가 오리지널 서버로부터 제공된 것이 아니다.
- 돌려받은 메타 정보 세트가 오리진 서버의 것과 일치하지 않지만 로컬이나 서드 파티 복사본에서 모아졌음을 의미한다.
- 이러한 조건에서는 이 응답이 아니라 200 응답을 반드시 우선된다.
204 No Content
- 처리를 성공하였지만, 클라이언트에게 돌려줄 콘텐츠가 없다.
- 요청에 대해서 보내줄 수 있는 콘텐츠가 없지만, 헤더는 의미 있을 수 있다.
- 사용자-에이전트는 리소스가 캐시된 헤더를 새로운 것으로 업데이트 할 수 있다.
205 Reset Content
- 처리를 성공하였고 브라우저의 화면을 리셋하라.
- 이 응답 코드는 요청을 완수한 이후에 사용자 에이전트에게 이 요청을 보낸 문서 뷰를 리셋하라고 알려준다.
206 Partial Content
- 콘텐츠의 일부만을 보낸다.
- 클라이언트에서 복수의 스트림을 분할 다운로드를 하고자 범위 헤더를 전송했기 때문에 사용된다.
207 Multi-Status
- (WebDAV) 처리 결과의 스테이터스가 여러 개이다.
- 멀티-상태 응답은 여러 리소스가 여러 상태 코드인 상황이 적절한 경우에 해당되는 정보를 전달한다.
226 IM Used
- 서버가 GET 요청에 대한 리소스의 의무를 다 했고, 그리고 응답이 하나 또는 그 이상의 인스턴스 조작이 현재 인스턴스에 적용되었음을 알려준다.
300 Multiple Choice
- 선택 항목이 여러 개 있다.
- 요청에 대해 하나 이상의 응답이 가능하다.
- 사용자 에이전트 또는 사용자는 그 중에 하나를 반드시 선택해야 한다.
301 Moved Permanently
- 지정한 리소스가 새로운 URI로 이동하였다.
- 요청한 리소스의 URI 가 변경되었음을 의미한다.
302 Found
- 요청한 리소스를 다른 URI에서 찾았다.
- 요청한 리소스의 URI 가 일시적으로 변경 되었음을 의미한다.
- 새롭게 변경된 URI 는 나중에 만들어 질 수 있다.
- 클라이언트는 향후의 요청도 반드시 동일한 URI 로 해야한다.
303 See Other
- 다른 위치로 요청하라.
- 클라이언트가 요청한 리소스를 다른 URI 에서 GET 요청을 통해 받아야 할 때, 서버가 클라이언트로 직접 보내는 응답이다.
304 Not Modified
- 마지막 요청 이후 요청한 페이지는 수정되지 않았다.
- 이는 캐시를 목적으로 사용된다.
- 클라이언트에게 응답이 수정되지 않았음을 알려주며, 그러므로 클라이언트는 계속해서 응답의 캐시된 버전을 사용할 수 있다.
305 Use Proxy
- 지정한 리소스에 액세스하려면 프록시를 통해야 한다.
- 이전 버전의 HTTP 기술 사양에서 정의 되었다.
- 요청한 응답은 반드시 프록시를 통해서 접속해야 하는 것을 알려준다.
- 프록시의 in-band 설정에 대한 보안상의 걱정으로 인해 사라져 가고 있다.
306 unused
- 더 이상 사용되지 않으며, 현재는 추후 사용을 위해 예약되어있다.
307 Temporary Redirect
- 임시로 리다이렉션 요청이 필요하다.
- 클라이언트가 요청한 리소스가 다른 URI 에 있으며, 이전 요청과 동일한 메소드를 사용하여 요청해야 할 때, 서버가 클라이언트에 이 응답을 직접 보낸다.
- 302 Found HTTP 응답 코드와 동일한 의미를 가지고 있으며, 사용자 에이전트가 반드시 사용된 HTTP 메소드를 변경하지 말아야 한다는 점만 다르다.
- 만약 첫 요청에 POST 가 사용되었다면 두번째 요청도 반드시 POST 를 사용해야한다.
308 Permanent Redirect
- 리소스가 HTTP 응답 헤더의 Location 에 명시된 영구히 다른 URI 에 위치하고 있음을 의미한다.
- 301 Moved Permanently HTTP 응답 코드와 동일한 의미를 가지고 있으며, 사용자 에이전트가 반드시 HTTP 메소드를 변경하지 말아야 하는 점만 다르다.
- 만약 첫 요청에 POST 가 사용되었다면 두번째 요청도 반드시 POST 를 사용해야 한다.
400 Bad Request
- 요청의 구문이 잘못되었다.
- 잘못된 문법으로 인하여 서버가 요청을 이해할 수 없음을 의미한다.
401 Uauthorized
- 지정한 리소스에 대한 액세스 권한이 없다.
- 비록 HTTP 표준에서는 "미승인(unauthorized)" 을 명확히 하고 있지만 의미상 이 응답은 "비인증(unauthenticated)"을 의미한다.
- 클라이언트는 요청한 응답을 받기 위해서는 반드시 스스로를 인증해야 한다.
402 Payment Required
- 지정한 리소스를 액세스하기 위해서는 결제가 필요하다.
- 나중에 사용할 것을 대비해 예약되었다.
- 첫 목표로는 디지털 결제 시스템에 사용하기 위해 만들어졌지만 지금까지 사용되고 있지는 않는다.
403 Forbidden
- 지정한 리소스에 대한 액세스가 금지되었다.
- 클라이언트는 콘텐츠에 접근할 권리를 가지고 있지 않습니다.
- 예를들어 그들은 미승인이어서 서버는 거절을 위한 적절한 응답을 보낸다. 401 과 다른점은 서버가 클라이언트가 누구인지 알고 있다.
404 Not Found
- 서버는 요청받은 리소스를 찾을 수 없습니다.
- 브라우저에서는 알려지지 않은 URL 을 의미한다.
- API 에서 종점은 적절하지만 리소스 자체는 존재하지 않음을 의미할 수도 있다.
- 서버들은 인증받지 않은 클라이언트로 부터 리소스를 숨기기 위해 이 응답을 403 대신에 전송할 수도 있다.
- 이 응답코드는 웹에서 반복적으로 발생하기 때문에 가장 유명하다.
405 Method Not Allowed
- 요청한 URI가 지정한 메소드를 지원하지 않는다.
- 요청한 메소드는 서버에서 알고 있지만, 제거되었고 사용할 수 없습니다.
- 예를 들어, 어떤 API 에서 리소스를 삭제하는 것을 금지할 수 있습니다.
- 필수적인 메소드인 GET 과 HEAD 는 제거될 수 없으며 이 에러코드를 리턴할 수 없다.
406 Not Acceptable
- 클라이언트가 Accept-* 헤더에 지정한 항목에 관해 처리할 수 없다.
- 서버가 서버 주도 콘텐츠 협상을 수행한 이후 사용자 에이전트에서 정해진 규격에 따른 어떠한 콘텐츠도 찾지 않았을 때 웹 서버가 보낸다.
407 Proxy Authentication Required
- 클라이언트는 프록시 서버에 인증이 필요하다.
- 이것은 401과 비슷하지만 프록시에 의해 완료된 인증이 필요하다.
408 Request Timeout
- 요청을 기다리다 서버에서 타임아웃하였다.
- 요청을 한지 시간이 오래된 연결에 일부 서버가 전송하며, 어떨 때에는 이전에 클라이언트로부터 어떠한 요청이 없었다고 하더라도 보내지기도 한다.
- 서버가 사용되지 않는 연결을 끊고 싶어한다는 것을 의미한다.
- 이 응답은 특정 몇몇 브라우저에서 빈번하게 보이는데 chrome, firefox 27+, IE9 과 같은 웹 서핑 속도를 올리기 위해 HTTP 사전 연결 메커니즘을 사용하는 브라우저들이 해당된다.
- 일부 서버는 이 메시지를 보내지 않고 연결을 끊어버리기도 한다.
409 Conflict
- 서버가 요청을 수행하는 중에 충돌이 발생하였다.
- 요청이 현재 서버의 상태와 충돌될 때 보낸다.
410 Gone
- 지정한 리소스가 이전에는 존재하였지만, 현재는 존재하지 않는다.
- 요청한 콘텐츠가 서버에서 영구적으로 삭제되었으며, 전달해 줄 수 있는 주소 역시 존재하지 않을 때 보낸다.
- 클라이언트가 그들의 캐쉬와 리소스에 대한 링크를 지우기를 기대한다.
- HTTP 기술 사양은 이 상태코드가 일시적인 홍보용 서비스에 사용되기를 기대한다.
- API 는 알려진 리소스가 이 상태코드와 함께 삭제되었다고 강요해서는 안된다.
411 Length Required
- 요청 헤더에 Content-Length를 지정해야 한다.
- 서버에서 필요로 하는 Content-Length 헤더 필드가 정의되지 않은 요청이 들어왔기 때문에 서버가 요청을 거절한다.
412 Precondition Failed
- If-Match와 같은 조건부 요청에서 지정한 사전 조건이 서버와 맞지 않는다.
- 클라이언트의 헤더에 있는 전제조건은 서버의 전제조건에 적절하지 않습니다.
413 Payload Too Large
- 요청 메시지가 너무 크다.
- 요청 엔티티는 서버에서 정의한 한계보다 큽니다. 서버는 연결을 끊거나 혹은 Retry-After 헤더 필드로 돌려보낼 것이다.
414 URI Too Long
- 요청 URI가 너무 길다.
- 클라이언트가 요청한 URI 는 서버에서 처리하지 않기로 한 길이보다 길다.
415 Unsupported Media Type
- 클라이언트가 지정한 미디어 타입을 서버가 지원하지 않는다.
- 요청한 미디어 포맷은 서버에서 지원하지 않습니다. 서버는 해당 요청을 거절할 것입니다.
416 Requested Range Not Satisfiable
- 클라이언트가 지정한 리소스의 범위가 서버의 리소스 사이즈와 맞지 않는다.
- Range 헤더 필드에 요청한 지정 범위를 만족시킬 수 없습니다.
- 범위가 타겟 URI 데이터의 크기를 벗어났을 가능성이 있습니다.
417 Expectation Failed
- 클라이언트가 지정한 Expect 헤더를 서버가 이해할 수 없다.
- Expect 요청 헤더 필드로 요청한 예상이 서버에서는 적당하지 않음을 알려준다.
421 Misdirected Request
- 서버로 유도된 요청은 응답을 생성할 수 없습니다.
- 서버에서 요청 URI 와 연결된 스킴과 권한을 구성하여 응답을 생성할 수 없을 때 보내진다.
422 Unprocessable Entity
- (WebDAV) 클라이언트가 송신한 XML이 구문은 맞지만, 의미상 오류가 있다.
- 요청은 잘 만들어졌지만, 문법 오류로 인하여 따를 수 없습니다.
423 Locked
- 리소스는 접근하는 것이 잠겨있습니다.
424 Failed Dependency
- (WebDAV) 다른 작업의 실패로 인해 본 요청도 실패하였다.
- 이전 요청이 실패하였기 때문에 지금 요청도 실패하였습니다.
426 Upgrade Required
- 클라이언트의 프로토콜의 업그레이드가 필요하다.
- 서버는 지금의 프로토콜을 사용하여 요청을 처리하는 것을 거절하였지만, 클라이언트가 다른 프로토콜로 업그레이드를 하면 처리를 할지도 모릅니다.
- 서버는 Upgrade 헤더와 필요로하는 프로토콜을 알려주기 위해 426 응답을 보냅니다.
428 Precondition Required
- If-Match와 같은 사전조건을 지정하는 헤더가 필요하다.
- 오리진 서버는 요청이 조건적이어야 합니다.
- 클라이언트가 리소스를 GET 해서, 수정하고 그리고 PUT 으로 서버에 돌려 놓는 동안 서드파티가 서버의 상태를 수정하여 발생하는 충돌인 업데이트 상실을 예방하기 위한 목적이다.
429 Too Many Requests
- 클라이언트가 주어진 시간 동안 너무 많은 요청을 보냈다.
- 사용자가 지정된 시간에 너무 많은 요청을 보냈습니다. ("rate limiting")
431 Request Header Fields Too Large
- 헤더의 길이가 너무 크다.
- 요청한 헤더 필드가 너무 크기 때문에 서버는 요청을 처리하지 않을 것입니다.
- 요청은 크기를 줄인 다음에 다시 전송해야한다.
444 Connection Closed Without Response
- 응답없이 연결 닫음
- (NGNIX) 응답을 보내지 않고 연결을 종료하였다.
451 Unavailable For Legal Reasons
- 법적으로 문제가 있는 리소스를 요청하였다.
- 사용자가 요청한 것은 정부에 의해 검열된 웹 페이지와 같은 불법적인 리소스입니다.
500 Internet Server Error
- 서버에 에러가 발생하였다.
- 서버가 처리 방법을 모르는 상황이 발생했습니다. 서버는 아직 처리 방법을 알 수 없습니다.
501 Not Implemented
- 요청한 URI의 메소드에 대해 서버가 구현하고 있지 않다.
- 요청 방법은 서버에서 지원되지 않으므로 처리할 수 없습니다.
- 서버가 지원해야 하는 유일한 방법은 GET 과 HEAD 이다.
- 이 코드는 반환하면 안된다.
502 Bad Gateway
- 게이트웨이 또는 프록시 역할을 하는 서버가 그 뒷단의 서버로부터 잘못된 응답을 받았다.
- 서버가 요청을 처리하는 데 필요한 응답을 얻기 위해 게이트웨이로 작업하는 동안 잘못된 응답을 수신했음을 의미한다.
503 Service Unavailable
- 현재 서버에서 서비스를 제공할 수 없다.
- 서버가 요청을 처리할 준비가 되지 않았습니다.
- 일반적인 원인은 유지보수를 위해 작동이 중단되거나 과부하가 걸렸을 때입니다.
- 이 응답과 함께 문제를 설명하는 사용자 친화적인 페이지가 전송되어야 한다는 점에 유의하십시오.
- 이 응답은 임시 조건에 사용되어야 하며, Retry-After HTTP 헤더는 가능하면 서비스를 복구하기 전 예상 시간을 포함해야 합니다.
- 웹 마스터는 또한 이러한 일시적인 조건 응답을 캐시하지 않아야 하므로 이 응답과 함께 전송되는 캐싱 관련 헤더에 대해서도 주의해야한다.
504 Gateway Timeout
- 게이트웨이 또는 프록시 역할을 하는 서버가 그 뒷단의 서버로부터 응답을 기다리다 타임아웃이 발생하였다.
- 서버가 게이트웨이 역할을 하고 있으며 적시에 응답을 받을 수 없을 때 주어진다.
505 HTTP Version Not Supported
- 클라이언트가 요청에 사용한 HTTP 버전을 서버가 지원하지 않는다.
- 요청에 사용된 HTTP 버전은 서버에서 지원되지 않습니다.
506 Variant Also Negotiates
- 서버에 내부 구성 오류가 있다. 즉 요청을 위한 투명한 컨텐츠 협상이 순환 참조로 이어진다.
507 Insufficient Storage
- (WebDAV) 서버에 저장 공간 부족으로 처리에 실패하였다.
- 서버에 내부 구성 오류가 있다.
- 선택한 가변 리소스는 투명한 콘텐츠 협상에 참여하도록 구성되므로 협상 프로세스의 적절한 종료 지점이 아닙니다.
508 Loop Detected
- 서버가 요청을 처리하는 동안 무한 루프를 감지했습니다.
510 Not Extended
- 서버가 요청을 이행하려면 요청에 대한 추가 확장이 필요합니다.
511 Network Authentication Required
- 클라이언트가 네트워크 액세스를 얻기 위해 인증을 받아야 할 필요가 있음을 나타낸다.
https://developer.mozilla.org/ko/docs/Web/HTTP/Status
'브라우저&네트워크' 카테고리의 다른 글
HTTP 와 HTTPS 차이점 (0) | 2023.08.10 |
---|---|
TCP와 UDP (0) | 2023.08.09 |
쿠키와 세션 (0) | 2023.08.08 |
CORS 란? (0) | 2023.08.06 |
HTTP Method (0) | 2023.08.06 |