답변:
Cache-Control
HTTP / 1.1에 도입되었으며보다 많은 옵션을 제공합니다 Expires
. 그것들은 같은 일을 수행하는 데 사용될 수 있지만에 대한 데이터 값 Expires
은 HTTP 날짜이지만 Cache-Control
max-age를 사용하면 "페이지 요청 후 X 시간"을 지정할 수있는 상대적 시간을 지정할 수 있습니다.
HTML 캐시 제어 는 매우 유사한 질문이며 대부분의 질문에 답변해야하는 캐싱 자습서 (예 : http://www.mnot.net/cache_docs/#EXPIRES )에 대한 링크가 있습니다. 요약하자면 Expires
이미지와 같은 정적 리소스 및 Cache-Control
캐싱 수행 방법에 대한 추가 제어가 필요한 경우에 권장 됩니다.
CDN (Cloud Delivery Network)을 사용하는 경우 최대 시간 (초)으로 Cache-Control을 사용하는 것이 좋습니다. 예를 들어 Cache-Control : max-age = 604800입니다. 이렇게하면 오리진 서버에 대한 요청 피크를 방지 할 수 있습니다. "Expires Wed, 20 Oct 20xx 04:37:07 GMT"를 사용하면 모든 브라우저에서 동시에 요청합니다.
cache-control
. 그래서 나는 왜 사용할 때 요청 피크가 Expires:
이 Google Developers 기사에 따르면 HTTP 캐싱 :
Cache-Control 헤더는 HTTP / 1.1 사양의 일부로 정의되었으며 응답 캐싱 정책을 정의하는 데 사용 된 이전 헤더 (예 : 만료)를 대체합니다. 모든 최신 브라우저는 Cache-Control을 지원하므로 필요한 것입니다.
Cache-Control은 HTTP / 1.1에 정의되어 있으며 서버에서 클라이언트로 모든 캐싱 메커니즘에이 객체를 캐시 할 수 있는지 알려줍니다. 초 단위로 측정됩니다 : Cache-Control: max-age=3600
.
Expires
헤더 필드는 응답이 부실 간주되는 날짜 / 시간을 제공합니다. 만료 값은 HTTP- 날짜 타임 스탬프 Expires: Tue, 18 Jul 2017 16:07:23 GMT
입니다.
응답 Cache-Control
에 max-age
지시문이 있는 필드가 포함 된 경우 수신자는 해당 Expires
필드를 무시해야 합니다.
그래도 관심이 있으시면이 추천을 Google 소년에게 직접 남겨주세요. https://developers.google.com/speed/docs/insights/LeverageBrowserCaching 캐시 제어보다 만료를 선호합니다