본문 바로가기
카테고리 없음

[HTTP 웹 기본 지식] 6. HTTP 상태 코드

by 0/0 2025. 8. 19.

HTTP 상태 코드 요약

HTTP 상태 코드는 서버가 클라이언트 요청을 처리한 결과를 알려주는 숫자다. 크게 5가지 범주로 나뉜다.


1xx (정보)

  • 요청을 정상적으로 받았으며, 처리가 계속 진행 중임을 의미
  • 자주 쓰이진 않음
  • 예: 100 Continue – 클라이언트가 요청 계속 진행해도 됨

2xx (성공)

  • 요청이 정상적으로 처리됨
  • 200 OK: 요청 성공 (가장 일반적)
  • 201 Created: 새로운 리소스가 성공적으로 생성됨 (POST)
  • 204 No Content: 요청 성공했으나 반환할 데이터 없음 (DELETE, PUT 등에서 자주 사용)

3xx (리다이렉션)

  • 요청한 자원이 다른 위치로 이동했음을 알려줌
  • 301 Moved Permanently: 자원이 영구적으로 이동 → 새 URL 사용해야 함
  • 302 Found: 일시적인 이동 (임시 리다이렉션)
  • 304 Not Modified: 캐시된 버전 사용 가능 (네트워크 성능 최적화)

4xx (클라이언트 오류)

  • 클라이언트 요청에 잘못이 있을 때
  • 400 Bad Request: 잘못된 요청 (파라미터, 문법 오류 등)
  • 401 Unauthorized: 인증 필요 (로그인 안 됨)
  • 403 Forbidden: 권한 없음 (접근 거부)
  • 404 Not Found: 요청한 리소스 없음
  • 405 Method Not Allowed: 허용되지 않은 HTTP 메서드 사용

5xx (서버 오류)

  • 서버에서 요청을 처리하다가 실패
  • 500 Internal Server Error: 서버 내부 오류 (가장 일반적)
  • 502 Bad Gateway: 게이트웨이/프록시 서버가 잘못된 응답 수신
  • 503 Service Unavailable: 서버 과부하나 점검으로 서비스 불가
  • 504 Gateway Timeout: 게이트웨이/프록시 서버 응답 지연

정리

  • 2xx: 성공 → 200, 201, 204
  • 3xx: 리다이렉션 → 301, 302, 304
  • 4xx: 클라이언트 오류 → 400, 401, 403, 404
  • 5xx: 서버 오류 → 500, 502, 503, 504