首页 > 解决方案 > 亚马逊 AWS S3 站点更新

问题描述

我已经浏览了几乎所有我能找到的相关问题,并且建议的解决方案似乎都没有解决我的问题。我目前在 Amazon AWS 上托管一个网站,严格使用 S3 和 Route 53 工具来托管一个静态网站,并从几个不同的 URL 查询重新路由到我们的网站。今天早上我尝试更新用于设置网页样式的 CSS 文件,以及一堆新的图像文件和一些对 HTML 页面的小更新,并注意到我的所有更改都立即显示在网页上,除了更改我已经制作了我的 CSS 文件。我已经检查过,S3 上的文件版本是正确/更新的版本,但是当我尝试使用 Web 浏览器中的开发人员工具检查显示的网页时,它仍然显示旧版本的 css 文件. 这对我来说没有任何意义,因为除了这个特定文件之外,所有其他更改都会立即显示出来。有没有人对如何解决这个问题/可能出了什么问题有任何想法?

注意:我根本没有在这个网页上使用 AWS CloudFront,所以我不相信其他地方建议的任何“失效”都会对我有帮助。过去,我更新了文件并在加载我的网页时立即看到了变化。

标签: amazon-web-servicesamazon-s3

解决方案


你已经知道这是一个浏览器缓存问题——你可以清除缓存,但是如果你想强制每个人都自动获取新的 CSS,我通常会在文件 include 中添加一个查询参数,即

<link href="~/css/plugins/thickbox/thickbox.css" rel="stylesheet" />

做这个:

<link href="~/css/plugins/thickbox/thickbox.css?v=1001" rel="stylesheet" />

每次推出更新时,您都可以升级 1001 - 浏览器将自动获取新文件。

谷歌“缓存破坏”以获取其他选项。


推荐阅读