HTTP Status Codes
HTTP status codes organized by category with descriptions.
41개 상태코드
1xx — 정보 (Informational)
| Code | Name | Description |
|---|---|---|
100 | Continue | 요청의 첫 부분이 수신되었으며 나머지를 계속 보내도 됩니다. |
101 | Switching Protocols | 서버가 프로토콜 전환 요청을 수락했습니다. (예: HTTP → WebSocket) |
102 | Processing | 서버가 요청을 수신하여 처리 중이지만 아직 응답이 없습니다. (WebDAV) |
103 | Early Hints | 최종 응답 전에 Link 헤더 등 일부 응답 헤더를 미리 보냅니다. |
2xx — 성공 (Success)
| Code | Name | Description |
|---|---|---|
200 | OK | 요청이 성공적으로 처리되었습니다. GET/PUT/PATCH 응답에 주로 사용. |
201 | Created | 요청이 성공하여 새 리소스가 생성되었습니다. POST 응답에 주로 사용. |
202 | Accepted | 요청이 수락되었지만 아직 처리되지 않았습니다. 비동기 처리에 사용. |
204 | No Content | 요청이 성공했지만 응답 본문이 없습니다. DELETE 응답에 주로 사용. |
206 | Partial Content | Range 헤더에 의해 부분적 콘텐츠가 반환되었습니다. 파일 다운로드 재개 등. |
207 | Multi-Status | 여러 리소스에 대한 상태를 XML로 반환합니다. (WebDAV) |
3xx — 리다이렉션 (Redirection)
| Code | Name | Description |
|---|---|---|
300 | Multiple Choices | 요청에 대해 여러 응답이 가능합니다. 클라이언트가 선택해야 합니다. |
301 | Moved Permanently | 리소스가 영구적으로 이동했습니다. 검색 엔진이 새 URL을 인덱싱합니다. |
302 | Found | 리소스가 임시로 다른 URL에 있습니다. 원래 URL을 계속 사용합니다. |
303 | See Other | 다른 URL에서 GET으로 리소스를 가져와야 합니다. POST 후 리다이렉트에 사용. |
304 | Not Modified | 리소스가 변경되지 않았습니다. 캐시된 버전을 사용하세요. |
307 | Temporary Redirect | 임시 리다이렉트. 원래 요청 메서드(POST 등)를 유지합니다. |
308 | Permanent Redirect | 영구 리다이렉트. 원래 요청 메서드를 유지합니다. (301의 메서드 보존 버전) |
4xx — 클라이언트 오류 (Client Error)
| Code | Name | Description |
|---|---|---|
400 | Bad Request | 잘못된 요청 구문, 유효하지 않은 파라미터, 잘못된 JSON 형식 등. |
401 | Unauthorized | 인증이 필요합니다. 토큰이 없거나 만료된 경우. (WWW-Authenticate 헤더 포함) |
403 | Forbidden | 인증은 되었지만 해당 리소스에 대한 접근 권한이 없습니다. |
404 | Not Found | 요청한 리소스를 찾을 수 없습니다. 잘못된 URL이거나 삭제된 리소스. |
405 | Method Not Allowed | 요청한 HTTP 메서드(GET, POST 등)가 해당 엔드포인트에서 허용되지 않습니다. |
406 | Not Acceptable | 요청의 Accept 헤더에 맞는 콘텐츠 타입을 생성할 수 없습니다. |
407 | Proxy Authentication Required | 프록시 서버의 인증이 필요합니다. |
408 | Request Timeout | 서버가 요청을 기다리다 타임아웃되었습니다. 클라이언트가 너무 느린 경우. |
409 | Conflict | 요청이 현재 리소스 상태와 충돌합니다. 동시 수정, 중복 생성 등. |
410 | Gone | 리소스가 영구적으로 삭제되어 더 이상 이용할 수 없습니다. 404와 달리 의도적 삭제. |
411 | Length Required | Content-Length 헤더가 필요합니다. |
412 | Precondition Failed | 요청 헤더의 전제 조건(If-Match 등)이 충족되지 않았습니다. |
413 | Payload Too Large | 요청 본문이 서버의 허용 크기를 초과했습니다. |
414 | URI Too Long | 요청 URI가 서버가 처리할 수 있는 길이를 초과했습니다. |
415 | Unsupported Media Type | 지원하지 않는 Content-Type입니다. (예: XML만 지원하는데 JSON 전송) |
422 | Unprocessable Entity | 요청 구문은 올바르지만 의미적으로 처리할 수 없습니다. 유효성 검증 실패. |
429 | Too Many Requests | 너무 많은 요청을 보냈습니다. Rate limiting 적용. Retry-After 헤더 확인. |
451 | Unavailable For Legal Reasons | 법적 사유로 접근이 차단된 리소스입니다. |
5xx — 서버 오류 (Server Error)
| Code | Name | Description |
|---|---|---|
500 | Internal Server Error | 서버 내부에서 예상치 못한 오류가 발생했습니다. 가장 일반적인 서버 오류. |
501 | Not Implemented | 서버가 요청된 HTTP 메서드나 기능을 아직 구현하지 않았습니다. |
502 | Bad Gateway | 게이트웨이/프록시(Nginx 등)가 상위 서버에서 잘못된 응답을 받았습니다. |
503 | Service Unavailable | 서버가 일시적으로 요청을 처리할 수 없습니다. 과부하, 유지보수, 배포 중. |
504 | Gateway Timeout | 게이트웨이/프록시가 상위 서버 응답을 기다리다 타임아웃되었습니다. |
505 | HTTP Version Not Supported | 서버가 요청에 사용된 HTTP 버전을 지원하지 않습니다. |
Frequently Asked Questions
What are HTTP status codes?↓
HTTP status codes are three-digit numbers returned by servers to indicate the result of a client request.