Skip to main content
sitewarm
HTTP caching headers

What does Cache-Control no-store do?

no-store tells every cache, browser or CDN, not to store any part of the request or the response. Each request then goes to the origin.

no-store is a `Cache-Control` directive that tells every cache, private or shared, not to store any part of the request or the response. Each request for that URL then goes to the origin. It is the right directive for personalized or sensitive pages, and the wrong one for public pages you want served from a CDN.

Cache-Control: no-store

RFC 9111 notes that no-store is not a reliable or sufficient mechanism for ensuring privacy: a malicious or compromised cache might not obey it. Do not rely on it to protect secrets.

  • Compared with `no-cache`, no-store gives up revalidation too: there is no stored copy to revalidate.
  • For responses that are personal but harmless to keep in the browser, `private` keeps them out of shared caches while still letting the browser reuse them.
  • A no-store page cannot be warmed: there is nothing in the cache for the next visitor to reuse.

References

  1. RFC 9111: HTTP Cachinghttps://www.rfc-editor.org/rfc/rfc9111
  2. MDN: Cache-Controlhttps://developer.mozilla.org/en-US/docs/Web/HTTP/Reference/Headers/Cache-Control

Warm your cache after every deploy

sitewarm requests the pages in your sitemap after a deploy and reports the cache state the CDN returns for each one, with the vantage point it was measured from.