HTTP Header
HTTP Header 값의 의미를 알아보자
2012년 이전에는 X-로 정의한 정보는 사용자 임의 정보를 정의할때 사용하곤 하였다.
하지만 2012년 이후에는 사용자 정의 헤더 정보에도 'X'를 붙이지 않아도 된다고 한다.
공통헤더
Date : HTTP 메시지가 생성된 날짜
Connection :
Content-Length : 요청과 응답 메시지의 본문 크기를 바이트 단위로 표시
Cache-Control : 요청과 응답 내의 캐싱 매커니즘
캐싱 알고리즘 종류는?
캐시 능력
public : 항상 캐시된다.
private : 단일 사용자를 위한 것이며 공유 캐시에 의해 저장되지 않는다.
no-cache : 요청을 서버에 무조건 요청한다.
only-if-cached : 캐시된 응답만을 원한다.
만료
max-age : 리소스가 최신 상태라고 판단할 최대 시간을 지정
s-maxage : max-age 혹은 Expirces 헤더를 재정의하나 공유 캐시에만 적용되며 사설 캐시에 의해서는 무시된다.
max-stale : 캐시의 만료 시간
min-fresh : 클라이언트가 지정된 시간동안 신선한 상태로 유지될 응답을 유지할 시간
stale-while-revalidate : 비동기 적으로 백그라운드에서 새로운 것으로 체크인하는 동안 클라이언트가 최신이 아닌 응답을 받아 들일 것임을 나타내는 시
재검증과 리로딩
must-revalidate : 캐시는 사용하기 이전에 기존 리소스의 상태를 반드시 확인해야 하는지
proxy-revalidate : must-revalidate와 동일하지만 공유 캐시에만 적용되며 사설 캐시에 의해서는 무시된다.
immutable : 응답 본문이 계속해서 변하지 않을 것이라는 것을 나타낸다.
기타
no-store : 캐시는 클라이언트 요청 혹은 서버 응답에 관해서 어떤것도 저장하지 않는다.
no-stransform : 응답에 대해 변형이나 변환이 일어나서는 안된다. 예를 들어, 캐시 공간을 절약하고 느린 링크 상의 트래픽량을 줄이기 위해 이미지 포맷들을 변환한다.
Content-Type : 컨텐츠의 타입과 문자열 인코딩을 명시할 수 있다.
MIME 타입이란? (Multipurpose Internet Mail Extensions)
이전에는 텍스트만 주고 받으면 됐었는데 바이너리 파일을 전송하면서 바이너리 파일들을 텍스트 파일로 변환이 필요하게 되었다. 파일로 변환하는 과정을 인코딩이라 한다.
시초는 이메일에 첨부된 파일을 텍스트 문자 형태로 변환해서 이메일과 함께 전송하기 위해 개발된 포맷이다.
Content-Language : 사용자 언어
Content-Encoding : 응답 컨텐츠 압축 알고리
X-Forwarded-For
HTTP 프록시나 로드 밸런서를 통해 웹 서버에 접속하는 클라이언트의 원 IP 주소를 식별하는 표준 헤더다. 클라이언트와 서버 중간에서 트래픽이 프록시나 로드 밸런서를 거치면, 서버 접근 로그에는 프록시나 로드 밸런서의 IP 주소만을 담고 있다. 클라이언트의 원 IP 주소를 보기위해 X-Forwarded-For 요청 헤더가 사용된다.
참고
Last updated