Network - HTTP Header Cache-Control
캐시 제어 헤더
- Cache-Control: 캐시 제어
- Pragma: 캐시 제어 (하위 호환)
- Expires: 캐시 유효 기간 (하위 호환)
Cache-Control
캐시 지시어 (directives) ⭐
- Cache-Control: max-age
- Cache-Control: no-cache
- 데이터는 캐시해도 되지만, 항상 원(origin) 서버에 검증하고 사용
- Cache-Control: no-store
- 데이터에 민감한 정보가 있으므로 저장하면 안된다.
- 메모리에서 사용하고 최대한 빨리 삭제
Pragma
캐시 제어 (하위 호환)
- Pragma: no-cache
- HTTP 1.0 하위 호환
Expires
캐시 만료일 지정 (하위 호환)
- expires: Mon, 01 Jan 1990 00:00:00 GMT
- 캐시 만료일을 정확한 날짜로 지정
- HTTP 1.0 부터 사용
- 지금은 더 유연한 Cache-Control: max-age 권장
- Cache-Control: max-age 와 함께 사용하면 Expires 는 무시
검증 헤더와 조건부 요청 헤더
- 검증 헤더 (Validator)
- ETag: “v1.0”, ETag: “aslakwj2q3”
- Last-Modified: Thu, 04 Jun 2020 07:19:24 GMT
- 조건부 요청 헤더
- If-Match, If-None-Match: ETag 값 사용
- If-Modified-Since, If-Unmodified-Since: Last-Modified 값 사용