HTTP 캐시 제어 헤더와 캐시 무효화
Cache-Control(캐시 제어)
-
public: 응답을 모든 브라우저와 프록시 캐시 서버에 저장할 수 있음
-
private: 응답을 브라우저에서만 캐시할 수 있음(기본 값)
-
max-age: 캐시 유효 시간 설정(초 단위)
-
s-maxage: 프록시 캐시에만 적용되는 max-age
-
no-cache: 데이터는 캐시하지만, 항상 origin 서버에 검증하고 사용
-
no-store: 캐시하면 안 됨(민감한 정보)
-
must-revalidate:
- 캐시 만료 후 최초 조회시 origin 서버에 검증
- origin 서버 접근 실패시 반드시 504(Gateway Timeout) 오류 발생
- 캐시 유효 시간이라면 캐시를 사용
캐시 제어 하위호환용
- Pragma: no-cache
- Expires
캐시 무효화
확실한 캐시 무효화 응답:
.
참고 자료:
- 김영한님의 '모든 개발자를 위한 HTTP 웹 기본 지식' 강의