본문 바로가기

생산성

HTTP 규약과 응답코드의 이해

안녕하세요, 생각하는 고양이입니다. 오늘은 웹의 세계에서 굉장히 중요한 역할을 하는 HTTP 규약(Protocol)과 그에 따른 응답코드에 대해 설명하려고 합니다. 이해하기 쉬운 설명과 함께 전문성을 살려보겠습니다!

HTTP 규약(Protocol)이란?

HTTP (HyperText Transfer Protocol)는 웹 브라우저(IE, Chrome, Safari, Firefox 등)와 웹 서버가 통신을 할 때 사용하는 규약입니다. 이 규약은 요청(Request)과 응답(Response)을 주고받는 간단한 구조로 이루어져 있습니다.

  • W3C(Web Consortium)와 IETF(Internet Engineering Task Force) 등의 국제적인 기구에서 관리하고 있습니다.
  • RFC-2616이라는 인터넷 표준에 근거해 있으며, 1991년 HTTP/0.9 버전부터 지금까지 꾸준히 업데이트되고 있습니다.
  • 대부분의 웹 관련 소프트웨어가 이 규약을 따르고 있으며, 웹 사이트 관리자는 서비스 특성에 따라 몇몇 설정을 할 수 있습니다.

🔵 중요: HTTP는 상태가 없는(stateless) 프로토콜이라는 특징을 가지고 있습니다. 이는 각 요청과 응답이 독립적이라는 의미입니다.

HTTP 응답코드

웹 서버가 요청에 어떤 식으로 응답하는지를 나타내는 코드입니다. 이러한 응답 코드는 몇 가지 카테고리로 분류됩니다.

네이버 서치어드바이저 캡처화면

응답 코드 그룹과 예시

  1. 1xx: Informational
    • 정보 제공을 목적으로 사용됩니다.
  2. 2xx: Successful
    • 200 OK: 가장 일반적으로 사용되며, 요청한 웹 페이지가 성공적으로 반환되었음을 나타냅니다.
  3. 3xx: Redirection
    • 301 Moved Permanently, 302 Found, 303 See Other, 307 Temporary Redirect: URL 변경 또는 리디렉션을 나타냅니다.
  4. 4xx: Client Error
    • 400 Bad Request, 401 Unauthorized, 403 Forbidden, 404 Not Found: 클라이언트 측에서 발생하는 문제를 나타냅니다.
  5. 5xx: Server Error
    • 500 Internal Server Error, 503 Service Unavailable: 서버 측에서 발생하는 문제를 나타냅니다.

웹을 이해하고, 특히 웹 개발을 하는데 있어 HTTP 규약과 응답코드는 필수적인 지식입니다. 이해가 어렵다면, 조금씩 나눠서 익혀보세요. 그럼 다음에 또 만나요!