HTTP 상태 코드
번호나 이름으로 검색하거나 분류로 필터링하세요. 각 코드는 명세에 연결됩니다.
1xx 정보
요청을 받았고 처리가 계속됩니다. 애플리케이션 코드에서는 드물게 보입니다.
2xx 성공
요청을 받고 이해했으며 수락했습니다.
3xx 리다이렉션
요청을 완료하려면 보통 다른 URL로 이동하는 등 추가 동작이 필요합니다.
4xx 클라이언트 오류
요청에 문제가 있습니다: 잘못된 문법, 인증 누락, 권한 없음, 존재하지 않는 리소스 등.
Method Not Allowed
이 URL에서 해당 HTTP 메서드를 지원하지 않습니다. 예: 읽기 전용 리소스에 POST. Allow 헤더가 가능한 메서드를 알려 줍니다.
RFC 91105xx 서버 오류
요청은 유효해 보였지만 서버가 처리하지 못했습니다.
HTTP 상태 코드란?
모든 HTTP 응답은 요청 결과를 클라이언트에 알려 주는 세 자리 상태 코드로 시작합니다. 첫 자리가 분류를 나타내며 1xx는 정보, 2xx는 성공, 3xx는 리다이렉션, 4xx는 클라이언트 오류, 5xx는 서버 오류입니다. 브라우저, 검색 엔진, 캐시, API 클라이언트, 모니터링 도구가 모두 이 코드에 따라 동작하므로 알맞은 코드를 고르는 것이 중요합니다. 301은 SEO 가치를 새 URL로 넘기지만 302는 넘기지 않고, 503은 크롤러에게 나중에 다시 오라고, 429는 API 클라이언트에게 속도를 줄이라고 알립니다. 코드는 주로 RFC 9110(HTTP Semantics)에 정의되어 있고 일부는 별도 RFC에 있습니다.
기능
- • IANA에 등록된 상태 코드 61개 전부(100~511)
- • 각 코드의 의미와 사용 시점을 쉽게 설명
- • 번호, 이름, 키워드로 즉시 검색하고 분류로 필터링
- • 각 코드를 정의한 RFC 섹션으로 바로 연결
- • 분류별 색상 표시와 #코드 앵커로 링크 공유
빠르고 오프라인 친화적
전체 레퍼런스가 페이지에 포함되어 있어 서버 요청 없이 브라우저에서 바로 검색됩니다.
HTTP 상태 코드 사용 방법
- 1
검색 칸에 404 같은 번호, "gateway" 같은 이름, "redirect" 같은 단어를 입력하세요. 입력하는 대로 결과가 바뀝니다.
- 2
분류 버튼(1xx~5xx)으로 목록을 좁힙니다. 예를 들어 클라이언트 오류를 한 번에 살펴볼 수 있습니다.
- 3
각 코드 아래 설명에서 의미, 서버가 보내야 하는 상황, 클라이언트의 반응을 확인합니다.
- 4
RFC 링크로 정확한 명세를 보거나 #429 같은 앵커로 특정 코드 링크를 공유합니다.
활용 예시
REST API 설계
POST 후에는 Location 헤더와 함께 201 Created, DELETE 후에는 204 No Content, 잘못된 JSON에는 400, 검증 오류에는 422, 현재 상태와 충돌하면 409를 반환합니다.
SEO를 지키며 페이지 이전
영구 이전에는 301이나 308을 써서 검색 순위를 넘기고, A/B 테스트 같은 임시 리다이렉트에는 302나 307을 씁니다. 308과 307은 POST를 POST로 유지합니다.
인증 오류
로그인하지 않았거나 토큰이 잘못되면 401, 사용자는 알지만 권한이 없으면 403을 보냅니다. 리소스 존재 여부를 숨기려고 403 대신 404를 반환하는 API도 많습니다.
점검과 과부하
점검 중에는 Retry-After 헤더와 함께 503을 반환해 크롤러가 순위를 유지하게 하고, 요청 한도를 넘은 클라이언트에는 Retry-After와 함께 429를 반환합니다.
자주 묻는 질문
401과 403의 차이는?+
401 Unauthorized는 "누구세요?", 즉 인증이 없거나 실패했다는 뜻입니다. 403 Forbidden은 "누군지는 알지만 이 작업은 허용되지 않는다"는 뜻입니다. 다시 로그인하면 401은 해결되지만 403은 아닙니다.
리다이렉트는 301과 302 중 무엇을?+
기존 URL이 영구히 사라지면 301(또는 308), 다시 돌아온다면 302(또는 307)를 쓰세요. 영구 이전에 302를 쓰면 새 URL 색인이 늦어질 수 있습니다.
502, 503, 504의 차이는?+
502 Bad Gateway: 프록시가 상위 서버에서 잘못된 응답을 받았습니다. 503 Service Unavailable: 서버가 과부하이거나 점검 중입니다. 504 Gateway Timeout: 상위 서버가 제때 응답하지 않았습니다.
오류에 200과 오류 메시지를 보내도 되나요?+
안 됩니다. 클라이언트, 캐시, 모니터링은 상태 코드를 기준으로 동작합니다. 실패에 200을 보내면 도구가 오류를 못 보고 오류 페이지가 "소프트 404"로 색인될 수 있습니다.