1 분 소요

✔ 특별한 Header 정보

  • Host
    • 요청한 호스트 정보, 도메인(요청)
  • Location
    • 페이지 리다이렉션(응답)
  • Allow
    • 허용 가능한 HTTP 메서드(응답)
  • Retry-After
    • 유저 에이전트가 다음 요청을 하기까지의 걸리는 시간(응답)

Host

GET /search?q=hello&hl=ko HTTP/1.1
Host: www.google.com(Header)
  • 요청한 호스트 정보(도메인)
    • 요청에서 사용
    • 필수 Header 정보로, 가장 중요한 정보다
    • 하나의 서버가 여러 도메인을 처리할 때 사용
    • 하나의 IP 주소에 여러 도메인이 적용되어 있을 때

하나의 서버가 여러 도메인을 처리해야 할 경우?

  • 가상호스트를 통해 여러 도메인을 한번에 처리할 수 있는 서버로, 실제 애플리케이션이 여러개 구동될 수 있다
  • 하나의 서버안에 여러개의 애플리케이션이 다른 도메인로 존재할 수 있다

만약 Host 정보가 없다면?

GET /hello HTTP/1.1
(공란)
  • 하나의 서버안에 가상 호스트를 통해 여러개의 애플리케이션이 구동 될 수 있다
  • Host 정보가 없는 경우 서버는 애플리케이션을 구분할 수 없는 이슈가 발생한다.

Location

페이지 리다이렉션

  • 웹 브라우저는 3xx 응답 결과에 Location 헤더가 있는지 확인
  • 만약 해당 헤더가 존재하면 Location 위치로 자동 리다이렉트 수행
  • 응답코드 3xx에서 설명
  • 201 (Created): Location 값은 요청에 의해 생성된 리소스 URI
  • 3xx (Redirection): Location 값은 요청을 자동으로 리디렉션하기 위한 대상 리소스
  • 201
    • 요청에 대한 응답이 성공하여 리다이렉트를 수행
  • 3xx

Allow

허용 가능한 HTTP 메서드:

  • 405 (Method Not Allowed) 에서 응답에 포함해야함
  • Allow: GET, HEAD, PUT
  • GET, HEAD, PUT만 지원하는 상황이며 URL 경로만 있는 경우
    • 405 응답을 내려주면서 응답 해더에 정보를 포함해 응답
  • 4xx

Retry-After

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

  • 503 (Service Unavailable)
    • 서비스가 언제까지 불능인지 알려줄 수 없음
    • Retry-After: Fri, 31 Dec 1999 23:59:59 GMT (날짜 표기)
    • Retry-After: 120 (초단위 표기)
    • 서비스가 언제까지 불능인지에 대한 정보를 제공할 수 있다
    • 실제로 사용하는데 제약이 많다

참고 자료

댓글남기기