틈 > 기술 > HTTP

HTTP

HTTP는 클라이언트가 자원에 대한 요청을 보내고 서버가 상태·헤더·본문으로 응답하는 무상태 응용 계층 프로토콜이다.

역사토론신고
최근 수정: 2026. 7. 29. 오후 2:47:18 · 편집자 익명 편집자 · 조회 0

1. 개요

HTTP(Hypertext Transfer Protocol)는 웹의 클라이언트와 서버가 자원을 요청하고 응답하는 의미 체계다. 대상 자원은 문서에 한정되지 않고 이미지, 파일, API 결과 등 무엇이든 될 수 있다.[1]

2. 핵심 구성

구분설명
메서드GET·HEAD·POST·PUT·DELETE 등 요청 목적 표현
상태 코드2xx 성공, 3xx 이동, 4xx 요청 문제, 5xx 서버 문제
필드콘텐츠 형식·캐시·인증 등 부가 정보를 이름과 값으로 전달
본문필요할 때 표현 데이터나 오류 설명을 운반

3. 작동 원리

클라이언트는 메서드와 대상, 필드, 선택적 본문을 보낸다. 서버는 자원의 현재 상태와 요청 의미를 바탕으로 응답한다. HTTP는 각 요청을 독립적으로 이해하는 무상태 프로토콜이지만 쿠키·인증 토큰·서버 세션을 결합하면 로그인 같은 연속 상태를 구현할 수 있다.

4. 형성과 표준

HTTP/0.9의 단순한 문서 전송에서 HTTP/1.0과 1.1의 필드·캐시·연결 관리가 발전했다. HTTP/2는 한 연결에서 여러 스트림을 다루고, HTTP/3는 QUIC 위에서 전송한다. 버전이 달라도 메서드와 상태 코드 등 공통 의미는 RFC 9110이 정의한다.[2]

5. 활용과 주의점

GET처럼 안전하다고 정의된 메서드에 데이터 변경 부작용을 넣지 않는 것이 좋다. 캐시·재시도·리디렉션은 메서드 의미와 상태 코드에 영향을 받는다. 민감한 통신은 평문 HTTP가 아니라 HTTPS를 사용하며 URL에 비밀정보를 넣지 않는다.

각주

출처·각주

  1. [1]
    RFC 9110, HTTP Semantics, (확인: 2026-07-29)출처
  2. [2]
    RFC 9112, HTTP/1.1, (확인: 2026-07-29)출처
  3. [3]
    이 문서는 표준 문서의 사실관계를 바탕으로 독자적인 문장으로 요약했으며 외부 이미지나 원문 복제물을 포함하지 않는다.