본문 바로가기

Web35

[HTTP 웹 기본 지식] 캐시 무효화 Cache-Control 확실한 캐시 무효화 응답 Cache-Control: no-cache, no-store, must-revalidate Pragma: no-cache HTTP 1.0 하위 호환 캐시 지시어(directives) - 확실한 캐시 무효화 Cache-Control: no-cache 데이터는 캐시해도 되지만, 항상 원 서버에 검증하고 사용(이름에 주의!) Cache-Control: no-store 데이터에 민감한 정보가 있으므로 저장하면 안됨 (메모리에서 사용하고 최대한 빨리 삭제) Cache-Control: must-revalidate 캐시 만료후 최초 조회시 원 서버에 검증해야 함 원 서버 접근 실패시 반드시 오류가 발생해야함 - 504(Gateway Timeout) must-reval.. 2021. 9. 29.
[HTTP 웹 기본 지식] 프록시 캐시 Cache-Control 캐시 지시어(directives) - 기타 Cache-Control: public 응답이 public 캐시에 저장되어도 됨 Cache-Control: private 응답이 해당 사용자만을 위한 것임, private 캐시에 저장해야 함(기본값) Cache-Control: s-maxage 프록시 캐시에만 적용되는 max-age Age: 60 (HTTP 헤더) 오리진 서버에서 응답 후 프록시 캐시 내에 머문 시간(초) 참조 모든 개발자를 위한 HTTP 웹 기본 지식 2021. 9. 29.
[HTTP 웹 기본 지식] 캐시와 조건부 요청 헤더 캐시 제어 헤더 Cached-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 G.. 2021. 9. 29.
[HTTP 웹 기본 지식] 검증 헤더와 조건부 요청2 검증 헤더 캐시 데이터와 서버 데이터가 같은지 검증하는 데이터 Last-Modified, ETag 조건부 요청 헤더 검증 헤더로 조건에 따른 분기 if-Modified-Since: Last-Modified 사용 if-None-Match: ETag 사용 조건이 만족하면 200 OK 조건이 만족하지 않으면 304 Not Modified 예시 If-Modified-Since 데이터 미변경 예시 캐시: 2020년 11월 10일 10:00:00 vs 서버: 2020년 11월 10일 10:00:00 304 Not Modified, 헤더 데이터만 전송(BODY 미포함) 전송 용량 0.1M(헤더 0.1M, 바디 1.0M) 데이터 변경 예시 캐시: 2020년 11월 10일 10:00:00 vs 서버: 2020년 11월 .. 2021. 9. 28.