我有一个 Rails 生成的 JS 文件,我想通过 CloudFront 分发(使用 EC2 上的 Rails 应用程序作为源服务器)。有谁知道我应该在 JS 文件的响应中使用哪些标头,以确保最终用户的浏览器不会缓存 JS 文件?
我知道 CloudFront 不尊重任何少于 1 小时的过期标头...但文档说这些标头仍会传递给客户端: http://docs.amazonwebservices.com/AmazonCloudFront/latest/DeveloperGuide/
使用以下内容是否安全?
Cache-Control: no-cache
Pragma: no-cache
答案1
嗯,结果我根本不想这么做。CloudFront 尊重no-cache
标头,因此实际上不会在 CloudFront 上缓存 JS 文件一小时。为此使用 CloudFront 真的没有意义……更多信息可以在我的 AWS 论坛上找到邮政。
答案2
显然 CF 不再尊重标头。我尝试了、和标头no-cache
的几种组合,但 CF 总是在第一次访问后返回。但它确实将这些标头原封不动地传递给客户端。Cache-Control
Pragma
Expires
X-Cache:Hit from cloudfront