如何使静态文件上的HTTP缓存标头无效



我在.htaccess中设置了一个CacheControl声明,用于浏览器缓存静态文件。

在连续部署时,如何定义使客户端缓存无效的指令?

<Files *.js>
Header add "Cache-Control" "max-age=604800"
</Files>

如何定义使客户端缓存无效的指令?

简单的答案是你不能-HTTP协议不支持它

但有一种巧妙的方法:创建一个清单html页面,列出所有可缓存的资产,将其加载到iframe中,然后使用Javascript刷新iframe。这将创建对服务器的内容的有条件请求,如果服务器以2xx状态响应,则提供的新内容将覆盖缓存。

然而,仅仅因为是可能的并不能让它成为一个好主意(有很多原因——除非你想付钱让我来提供几周的咨询和培训,否则不要问)不要在家里尝试

普遍的共识是,管理缓存的最佳方式是使用非常长的TTL提供内容,但在URL中嵌入版本控制信息。

相关内容

  • 没有找到相关文章

最新更新