📚 Computer Science/Network

[모든 개발자를 위한 HTTP 웹 기본 지식] 7. HTTP 헤더1 (일반 헤더) - 일반 정보, 특별한 정보

ryang x2 2023. 8. 16. 19:58
728x90
반응형

인프런 김영한님 [모든 개발자를 위한 HTTP 웹 기본 지식] 강의를 듣고 정리한 내용입니다.😊😊

 

1. 일반정보 

👉 From

유저 에이전트의 이메일 정보

- 일반적으로 잘 사용되지 않음 

- 검색 엔진 같은 곳에서, 주로 사용

- 요청에서 사용

 

👉 Referer

이전 웹 페이지 주소

- 현재 요청된 페이지의 이전 웹 페이지 주소

- A -> B로 이동하는 경우 B를 요청할 때 Referer: A를 포함해서 요청 

- Referer를 사용해서 유입 경로 분석 가능

- 요청에서 사용

참고) referer는 단어 referrer의 오타

 

 

👉 User-Agent

유저 에이전트 애플리케이션 정보

- 클라이언트의 애플리케이션 정보(웹 브라우저 정보, 등등)

- 통계 정보

- 어떤 종류의 브라우저에서 장애가 발생하는지 파악 가능

- 요청에서 사용

 

👉 Server

요청을 처리하는 오리진(ORIGIN) 서버의 소프트웨어 정보

- ORIGIN 서버: 실제로 응답을 보낸 서버(HTTP 요청을 보내면, 실제로 많은 프록시 서버를 거쳐 응답을 받게됨)

- 응답에서 사용

 

👉 Date

메시지가 생성된 날짜

응답에서 사용

 

 

2. 특별한 정보 

👉 Host ⭐⭐⭐ (중요)

요청한 호스트 정보(도메인)

- 요청에서 사용 (필수 사용!!! 매우중요❗❗❗❗❗❗❗⭐⭐⭐⭐⭐)

- 하나의 서버가 여러 도메인을 처리해야 할 때 or 하나의 IP 주소에 여러 도메인이 적용되어 있을 때 사용

 

EX)

1) 가상 호스트를 통해 여러 도메인을 한 번에 처리할 수 있는 서버가 있음

- ip가 200.200.200.2 인 서버는 aaa.com, bbb.com, ccc.com 도메인을 처리할 수 있음

 

2) 클라이언트가 Host를 지정하지 않고 서버에 /hello 요청을 보내는 경우

- 서버는 /hello가 aaa.com, bbb.com, ccc.com 중 어떤 도메인에 관한 요청인지 구분X(IP로 통신하기 때문에)

 

 

3) 클라이언트가 Host를 지정하고 서버에 /hello 요청을 보내는 경우

- 서버는 /hello가 Host의 aaa.com에 관한 요청인지 알 수 있다(가상 호스팅)

 

 

 

👉 Location

페이지 리다이렉션

- 웹 브라우저는 3xx 응답의 결과에 Location 헤더가 있으면, Location 위치로 자동 이동 (리다이렉트)

- 201 (Created): Location 값은 요청에 의해 생성된 리소스 URI

- 3xx (Redirection): Location 값은 요청을 자동으로 리디렉션하기 위한 대상 리소스를 가리킴

 

 

👉 Allow

허용 가능한 HTTP 메서드

- 405 (Method Not Allowed) 에서 응답에 포함해야함

- Allow: GET, HEAD, PUT

 

 

👉 Retry-After 

유저 에이전트가 다음 요청을 하기까지 기다려야 하는 시간

- 503 (Service Unavailable): 서비스가 언제까지 불능인지 알려줄 수 있음

- 날짜와 초단위 표기 가능

 


❓ 질문 정리 ❗

Q. 구글에서 hello를 검색하고 위키피디아에 들어가면 referer가 www.google.com/search?q=hello가 아닌, www.google.com/인 이유는?

A. 개인 정보 보호를 위해 도메인을 제외한 추가 정보를 referer에서 제공할 수 있다. 구글의 검색 쿼리가 이에 해당한다.

[출처] https://www.inflearn.com/questions/482175

 

Q. Post와 Host는 비슷한 개념인가요?

해당 IP에서 Host를 찾고 -> 그 안에서 Port로 구분한다.

[출처] https://www.inflearn.com/questions/217279

 

728x90
반응형