HTTP 헤더(header) ★★★
by yjym33HTTP(하이퍼텍스트 전송 프로토콜) 헤더(Header)는 HTTP 요청(Request)과 응답(Response) 메시지의 일부로 사용되며, 이 메시지들이 클라이언트와 서버 간에 데이터와 메타데이터를 교환할 수 있도록 합니다.
HTTP 헤더에는 여러 가지 정보와 지시사항이 포함되어 있어 요청 및 응답의 처리 방식을 결정하고 데이터의 형식, 캐싱, 인증, 압축 등 다양한 기능을 제어할 수 있습니다.
다음은 HTTP 헤더의 주요 종류와 그 역할에 대해 자세히 설명하겠습니다.
1. 요청 헤더(Request Headers):
a. Host:
요청한 호스트의 도메인 이름 또는 IP 주소를 나타냅니다.
여러 도메인을 호스팅하는 웹 서버에 필수적입니다.
b. User-Agent:
클라이언트의 브라우저 또는 애플리케이션 정보를 포함합니다.
서버는 이 정보를 통해 적절한 콘텐츠를 반환하거나 호환성을 관리합니다.
c. Accept:
클라이언트가 받아들일 수 있는 콘텐츠 유형(미디어 타입)을 지정합니다.
서버는 이 정보를 기반으로 요청에 맞는 콘텐츠를 선택합니다.
d. Authorization:
클라이언트의 인증 정보를 전송합니다.
보호된 리소스에 접근할 때 사용되며, Basic Authentication, Bearer Token 등 다양한 인증 방식을 지원합니다.
e. Cookie:
클라이언트의 이전 요청에서 서버로부터 받은 쿠키 정보를 포함합니다.
사용자 상태를 유지하거나 세션 관리에 사용됩니다.
f. Referer:
현재 요청을 생성한 웹 페이지의 URL을 나타냅니다.
서버는 요청의 원래 출처를 확인할 수 있습니다.
2. 응답 헤더(Response Headers):
a. Status:
응답 상태 코드와 함께 응답의 성공 또는 실패를 나타냅니다.
예: "200 OK" 또는 "404 Not Found".
b. Content-Type:
응답 본문의 데이터 타입(미디어 타입)을 나타냅니다.
브라우저는 이 정보를 사용하여 콘텐츠를 올바르게 렌더링합니다.
c. Content-Length:
응답 본문의 크기(바이트)를 나타냅니다.
브라우저는 이 정보를 사용하여 다운로드 진행 상황을 표시하거나 콘텐츠를 다운로드합니다.
d. Location:
리다이렉션 시 사용되며, 새로운 URL을 지정합니다.
3xx 상태 코드와 함께 사용되어 클라이언트를 다른 위치로 리다이렉션합니다.
e. Set-Cookie:
클라이언트에게 서버에서 생성된 쿠키를 설정하도록 지시합니다.
클라이언트는 이 쿠키를 저장하고 나중에 서버로 전송합니다.
f. Cache-Control:
캐싱 동작을 지정합니다. 응답을 캐싱하거나 캐시된 응답을 사용하지 않도록 설정할 수 있습니다.
'Development > CS' 카테고리의 다른 글
HTTP/2와 HTTP/3의 차이 ★★★ (1) | 2023.10.04 |
---|---|
HTTP/1.0과 HTTP/1.1의 차이와 keep-alive, HOL★★★ (0) | 2023.10.04 |
public IP, private IP, NAT ★★★ (0) | 2023.10.03 |
클래스리스와 서브넷마스크, 서브네팅 ★★★ (0) | 2023.10.03 |
클래스풀(Classful IP Addressing) ★★★ (1) | 2023.10.03 |
블로그의 정보
생각보다 실천을
yjym33