내용

    HTTP 상태 코드 목록: 완벽한 가이드와 예제

    상세한 설명과 함께 HTTP 상태 코드 목록 전체. 웹 개발에서의 목적과 적절한 사용법을 이해할 수 있도록 96개의 HTTP 응답 코드(63개의 일반 코드 및 33개의 사용자 정의 코드)를 모두 모았습니다.
    코드 1xx
    100 Continue서버가 요청의 초기 부분을 수신했으며 나머지를 기다리고 있습니다.
    101 Switching Protocols클라이언트가 프로토콜 전환을 요청했으며 서버가 변경을 수행하고 있습니다.
    102 Processing서버가 요청을 수락했지만 처리에 더 오랜 시간이 걸립니다.
    103 Early Hints서버가 전체 응답이 준비되기 전에 미리 헤더를 전송합니다.
    코드 2xx
    200 OK요청이 성공적으로 처리되었으며, 서버가 요청된 데이터를 제공했습니다.
    201 Created리소스가 성공적으로 생성되었습니다. 서버는 생성된 리소스의 주소가 포함된 Location 헤더를 포함합니다.
    202 Accepted요청이 수락되었지만 처리 완료는 나중에 이루어질 것입니다. 응답에는 추가 상태 정보가 포함될 수 있습니다.
    203 Non-Authoritative Information응답에는 주요 서버가 아닌 제3자 출처에서 얻은 정보가 포함됩니다.
    204 No Content서버가 요청을 성공적으로 처리했지만 콘텐츠를 반환하지 않습니다. 브라우저는 현재 문서를 업데이트하지 않아야 합니다.
    205 Reset Content클라이언트는 현재 상호 작용에 사용된 입력 양식을 재설정해야 합니다.
    206 Partial Content서버는 Content-Range 헤더에 지정된 대로 요청된 리소스의 일부만 전송하고 있습니다.
    207 Multi-Status응답에는 요청의 다양한 부분에 대한 여러 독립적인 상태 코드가 포함되어 있습니다.
    208 Already Reported요소는 동일한 응답에서 이미 나열되었습니다.
    218 This is fine서버가 요청을 성공적으로 처리했지만 약간의 문제가 있음을 나타내는 비공식 코드입니다.
    226 IM Used서버가 GET 요청을 완료하고 하나 이상의 리소스 변환 알고리즘을 사용했습니다.
    코드 3xx
    300 Multiple Choices요청한 리소스는 여러 가지 변형으로 제공됩니다. 서버는 가능한 옵션 목록을 제공할 수 있습니다.
    301 Moved Permanently리소스는 Location 헤더에 지정된 새 주소로 영구적으로 이동되었습니다.
    302 Found리소스는 다른 주소에서 일시적으로 사용할 수 있지만, 이전 URL은 미래에 다시 사용될 수 있습니다.
    303 See Other리소스는 Location 헤더에 지정된 다른 주소에서 사용할 수 있습니다.
    304 Not Modified리소스는 마지막 요청 이후 수정되지 않았으며, 캐시된 버전이 사용됩니다.
    305 Use Proxy리소스에 대한 접근은 지정된 프록시 서버를 통해서만 가능합니다.
    306 Switch Proxy이 코드는 예약되어 있지만 현대 HTTP 구현에서는 사용되지 않습니다.
    307 Temporary Redirect리소스가 일시적으로 이동되었지만, 요청 방법은 변경되지 않아야 합니다.
    308 Permanent Redirect리소스는 새 URL로 영구적으로 이동되었으며, 요청 방법은 유지되어야 합니다.
    코드 4xx
    400 Bad Request요청이 구문 오류로 인해 잘못되었습니다.
    401 Unauthorized자원에 접근하기 위해 사용자 인증이 필요합니다.
    402 Payment Required자원에 접근하기 위해 결제가 필요합니다.
    403 Forbidden서버에 의해 자원에 접근하는 것이 금지되었습니다.
    404 Not Found요청한 자원을 찾을 수 없습니다.
    405 Method Not Allowed서버가 이 자원에 대해 요청 방법을 지원하지 않습니다.
    406 Not Acceptable서버의 응답 형식이 클라이언트의 요청과 일치하지 않습니다.
    407 Proxy Authentication Required프록시 서버를 통한 인증이 필요합니다.
    408 Request Timeout요청이 시간 초과되었습니다; 연결이 종료되었습니다.
    409 Conflict현재 자원의 상태와 충돌로 인해 요청을 완료할 수 없습니다.
    410 Gone요청한 자원이 더 이상 사용 가능하지 않으며, 복원되지 않을 것입니다.
    411 Length Required서버가 Content-Length 헤더를 요구합니다.
    412 Precondition Failed요청의 전제 조건 중 하나가 충족되지 않았습니다.
    413 Payload Too Large요청 크기가 서버의 허용 한도를 초과했습니다.
    414 URI Too Long요청한 URI가 서버에서 처리하기에는 너무 깁니다.
    415 Unsupported Media Type요청 데이터 형식이 서버에서 지원되지 않습니다.
    416 Range Not Satisfiable요청한 범위를 서버에서 처리할 수 없습니다.
    417 Expectation Failed서버가 Expect 헤더 값을 충족할 수 없습니다.
    418 I’m a Teapot서버는 주전자로서 커피를 만들기를 거부합니다.
    419 Page Expired사용자 세션이 만료되었습니다.
    420 Method Failure메소드 실패.
    420 Enhance Your Calm요청이 너무 많습니다. 부하를 줄여주세요.
    421 Misdirected Request요청이 처리할 수 없는 서버로 전달되었습니다.
    422 Unprocessable Entity서버가 콘텐츠 오류로 인해 요청을 처리할 수 없습니다.
    423 Locked자원에 대한 접근이 잠겨 있습니다.
    424 Failed Dependency종속 요청의 실패로 인해 요청이 실패했습니다.
    425 Too Early서버가 요청을 처리하기를 거부했습니다. 너무 일찍 전송되었습니다.
    426 Upgrade Required클라이언트는 요청을 완료하기 위해 다른 프로토콜로 업그레이드해야 합니다.
    428 Precondition Required서버가 요청이 특정 전제 조건을 충족해야 합니다.
    429 Too Many Requests클라이언트가 짧은 시간 내에 너무 많은 요청을 보냈습니다.
    430 Shopify Security Rejection요청이 Shopify의 보안 시스템에 의해 거부되었습니다.
    430 Shopify Security Rejection요청이 Shopify의 보안 시스템에 의해 거부되었습니다.
    431 Request Header Fields Too Large요청 헤더가 서버에서 처리하기에는 너무 큽니다.
    440 Login Time-out사용자 세션이 만료되었습니다.
    444 No Response서버가 응답을 보내지 않고 연결을 종료했습니다.
    449 Retry With요청을 처리하기 위해 추가 정보가 필요합니다.
    450 Blocked by Windows Parental Controls자원에 대한 접근이 Windows 자녀 보호 기능에 의해 차단되었습니다.
    451 Unavailable For Legal Reasons법적 이유로 인해 자원에 대한 접근이 제한됩니다.
    494 Request Header Too Large요청 헤더가 서버에서 처리하기에는 너무 큽니다.
    495 SSL Certificate Error클라이언트가 제시한 SSL 인증서가 유효하지 않습니다.
    496 SSL Certificate Required이 자원에 접근하기 위해 유효한 SSL 인증서가 필요합니다.
    497 HTTP Request Sent to HTTPS Port클라이언트가 HTTPS 전용 포트에 HTTP 요청을 보냈습니다.
    498 Invalid Token요청에 제공된 토큰이 유효하지 않거나 만료되었습니다.
    499 Client Closed Request클라이언트가 서버 응답을 받기 전에 연결을 종료했습니다.
    코드 5xx
    500 내부 서버 오류내부 서버 오류가 발생하여 요청 처리가 불가능합니다.
    501 구현하지 않음서버가 필요한 기능을 지원하지 않기 때문에 요청을 처리할 수 없습니다.
    502 잘못된 게이트웨이서버가 요청을 처리하는 동안 다른 서버로부터 잘못된 응답을 받았습니다.
    503 서비스 이용 불가서버가 과부하나 유지보수로 인해 일시적으로 이용할 수 없습니다.
    504 게이트웨이 시간 초과다른 서버나 게이트웨이로부터 응답을 기다리는 시간 제한이 초과되었습니다.
    505 지원하지 않는 HTTP 버전사용된 HTTP 버전이 서버에서 지원되지 않습니다.
    506 변형도 협상서버 구성 오류, 변형 선택도 협상에 참여합니다.
    507 저장 공간 부족메모리 또는 디스크 공간 부족으로 인해 요청을 완료할 수 없습니다.
    508 루프 감지됨요청 처리 중 무한 루프가 감지되었습니다.
    509 대역폭 제한 초과서버의 대역폭 제한이 초과되었습니다.
    510 확장되지 않음요청은 서버에서 지원되지 않는 추가 확장이 필요합니다.
    511 네트워크 인증 필요자원에 접근하기 위해 네트워크 인증이 필요합니다.
    520 알 수 없는 오류알 수 없는 서버 오류입니다.
    521 웹 서버가 다운됨웹 서버를 사용할 수 없습니다.
    522 연결 시간 초과연결 시간 초과가 초과되었습니다.
    523 출처에 도달할 수 없음자원 출처에 도달할 수 없습니다.
    524 시간 초과 발생요청 시간 초과가 초과되었습니다.
    525 SSL 핸드쉐이크 실패SSL 핸드쉐이크 실패입니다.
    526 유효하지 않은 SSL 인증서유효하지 않은 SSL 인증서입니다.
    527 레일건 오류레일건을 통한 연결 오류입니다.
    529 사이트가 과부하됨사이트가 요청으로 과부하되었습니다.
    530 사이트가 정지됨사이트가 정지되어 사용할 수 없습니다.
    530 출처 DNS 오류출처 측의 DNS 오류입니다.
    540 일시적으로 비활성화됨서버가 일시적으로 비활성화되었습니다.
    598 네트워크 읽기 시간 초과 오류시간 초과로 인한 네트워크 읽기 오류입니다.
    599 네트워크 연결 시간 초과 오류시간 초과로 인한 연결 오류입니다.
    기타
    783 예상치 못한 토큰 (Shopify)Shopify 요청에서 예상치 못한 토큰입니다.
    999 비표준비표준 오류 코드입니다.

    HTTP 상태 코드 목록

    HTTP 상태 코드는 클라이언트와 서버 간의 통신에서 발생하는 다양한 상황을 설명하는 데 사용됩니다. 이 코드는 요청의 결과를 나타내며, 웹 개발자 및 사용자 모두에게 중요한 정보를 제공합니다.

    HTTP 상태 코드의 일반적인 설명

    • 상태 코드 정의: 상태 코드는 HTTP 요청에 대한 응답의 상태를 나타내는 세 자리 숫자입니다.
    • 상태 코드의 의미와 중요성: 각 코드는 요청의 성공, 실패 또는 기타 정보를 나타내므로, 웹 애플리케이션의 성능을 모니터링하고 문제를 해결하는 데 필수적입니다.

    1xx: 정보 코드

    1xx 상태 코드는 정보 제공을 목적으로 하며, 요청이 수신되었음을 나타냅니다.

    • 100 Continue: 클라이언트가 요청을 계속 진행해도 좋다는 의미입니다.
    • 101 Switching Protocols: 서버가 클라이언트의 프로토콜 변경 요청을 수락했음을 나타냅니다.

    2xx: 성공 코드

    2xx 상태 코드는 요청이 성공적으로 처리되었음을 나타냅니다.

    • 200 OK: 요청이 성공적으로 처리되었습니다.
    • 201 Created: 요청이 성공적이며 새로운 리소스가 생성되었습니다.
    • 204 No Content: 요청은 성공적이지만 반환할 내용이 없습니다.

    3xx: 리다이렉션

    3xx 상태 코드는 요청한 리소스의 위치가 변경되었음을 나타냅니다.

    • 301 Moved Permanently: 요청한 리소스가 영구적으로 이동했습니다.
    • 302 Found: 요청한 리소스가 일시적으로 다른 위치에서 찾을 수 있습니다.
    • 304 Not Modified: 클라이언트가 이전에 캐시한 리소스가 변경되지 않았음을 나타냅니다.

    4xx: 클라이언트 오류

    4xx 상태 코드는 클라이언트의 요청에 오류가 있음을 나타냅니다.

    • 400 Bad Request: 잘못된 요청입니다.
    • 401 Unauthorized: 인증이 필요합니다.
    • 404 Not Found: 요청한 리소스를 찾을 수 없습니다.

    5xx: 서버 오류

    5xx 상태 코드는 서버 내에서 오류가 발생했음을 나타냅니다.

    • 500 Internal Server Error: 서버에서 예기치 않은 오류가 발생했습니다.
    • 502 Bad Gateway: 서버가 잘못된 응답을 받았습니다.
    • 503 Service Unavailable: 서버가 일시적으로 사용할 수 없습니다.

    상태 코드의 실무에서의 활용

    상태 코드는 웹 개발 및 유지보수에서 중요한 역활을 합니다. 다음과 같은 방법으로 활용할 수 있습니다:

    • 상태 코드 사용법: 각 요청에 적절한 상태 코드를 설정하여 클라이언트가 요청 결과를 이해할 수 있도록 합니다.
    • 오류 처리 권장사항: 4xx 및 5xx 오류를 적절히 처리하여 사용자에게 명확한 피드백을 제공합니다.
    • 사용자 경험에 미치는 영향: 적절한 상태 코드는 사용자 경험을 개선하고, 오류 발생 시 신속한 문제 해결을 도와줍니다.
    상태 코드 설명
    200 성공적인 요청
    404 페이지를 찾을 수 없음
    500 내부 서버 오류