[그림HTTP] 응답 헤더 필드

박상준·2023년 7월 21일
0

Accept-Ranges

Accept-Ranges: bytes
  • 서버 리소스의 일부분만 지정해서 취득할 수 있는 Range 요청을 접수할 수 있는지
  1. 가능 ⇒ bytes
  2. 불가능 ⇒ none

Age

Age: 600
  • 개요
    • 원본 서버에서 응답이 생성된 후 경과된 시간 초 단위 전달
    • 캐시된 응답의 신선도 체크용
  • 캐시 서버
    • 해당 응답이 마지막으로 검증된 시점(오리진 서버로부터.. 검증받은 시간)부터의 경과 시간
  • 프록시 서버
    • 서버가 생성한 응답의 나이

ETag

  • Entity Tag 의 약자
  • 헤더필드의 역할
    • 리소스의 버전 관리에서 사용
    • 서버가 리소스 갱신시 ETag 값 변경됨.
    • 특정 리소스를 식별하는 고유한 문자열 포함. ⇒ 웹 서버가 브라우저가 가지고 있는 캐시된 데이터가 최신인지 아닌지 판단.
  • 강한 ETag 와 약한 ETag
    1. 강한 ETag
      1. 리소스 바이트 수준에서의 동일성, 리소스가 조금이라도 변경되면 ETag 값도 변경됨
    2. 약한 ETag
      1. 리소스의 의미적 동일성, 약간의 변화가 있어도 ETag 값이 변경되지 않음
      2. W/ 접두사가 붙음
  • ETag의 실제 활용 예시
    • 한국어 버전 브라우저 사용시 한국어 리소스 반환

    • 영어 버전 브라우저 사용시 영문 리소스 반환

      같은 URI 를 가져도 , 각각 다른 리소스를 가짐. ETag 값으로 리소스를 구별한다고 합니다.

Location

  • 개요
    • 클라이언트에게 리소스의 새로운 위치를 알려주는 역할
    • 3xx: Redirection 응답과 함께 사용
    • 클라이언트가 요청한 URI 이외의 다른 위치로 리다이렉션함.
  • 대부분 브라우저는 해당 헤더 필드를 받으면 자동으로 새로 지정된 위치의 리소스 접근함

Proxy-Authenticate

  • 개요
    • 프록시 서버가 클라이언트에게 인증을 요구하는 경우

      Proxy-Authenticate: Basic realm="Usagidesign Auth"

Retry-After

  • 개요
    • 클라이언트에게 언제 다시 요청을 보내야 하는지를 알려줌
  • 사용
    • 503 Service Unavailable 응답 || 3xx Redirect 응답 과 함께 사용
    • 필드값으로 날짜 , 응답 후 대기 시간 (초) 지정
Retry-After: 120 (120초 후에 재요청)

Server

  • 개요
    • 서버에 설치된 HTTP 서버의 소프트웨어 정보를 전달
    • 소프트웨어 이름, 버전, 설정된 옵션 등이 포함
Server: Apache/2.2.17(Unix) PHP/5.2.5

Vary

  • 개요
    • 캐시를 컨트롤할때 사용됨
    • 오리진 서버가 프록시 서버에게 로컬 캐시를 어떻게 사용할지에 대한 지시를 전달
    • 동일한 요청이더라도 Vary 헤더 필드에서 지정된 헤더 필드 값이 다르면, 프록시 서버는 오리진 서버에서 새로운 리소스를 가져와야함
  • 예시 클라이언트가
    GET /sample.html HTTP/1.1
    요청을 보내면서
    Accept-Language: en-us
    헤더를 포함하면, 오리진 서버는
    Vary: Accept-Language
    헤더 필드를 포함하여 응답을 보냄. 이후 같은 요청이 들어온 경우 Accept-Language동일하면 캐시에서 응답,
    아니라면 새로운 리소스를 가져옴.

WWW-Authenticate

WWW-Authenticate: Basic realm="Usagidesign Auth"
  • 사용 목적
    • HTTP 엑세스 인증
    • 클라이언트에게 필요한 인증 방식을 알려줍니다.
  • 인증 스키마
    • Basic , Digest 등의 인증 스키마가 존재함.
    • 요청 URI 에 지정한 리소스에 적용가능
  • 401 상태코드와 헤더 필드
    • 401 Unauthorized 상태 코드의 응답에 반드시 포함되어야 함.
    • 클라이언트가 인증을 요청하는 리소스 권한 없음을 알려줌
  • realm 파라미터
    • 요청 URI 에서 지정한 보호되어야하는 리소스를 식별하기 위한 문자열
    • "Usagidesign Auth” 영역에 대한 인증을 사용자가 접근하려고했음 을 알려줌
profile
이전 블로그 : https://oth3410.tistory.com/

1개의 댓글

comment-user-thumbnail
2023년 7월 21일

소중한 정보 잘 봤습니다!

답글 달기