【问题标题】:How to manage Cache with Google cloud storage如何使用谷歌云存储管理缓存
【发布时间】:2017-10-06 18:30:01
【问题描述】:

我在 Google Cloud 存储中托管了一个网站。它只有静态文件。一切都很好。我更改了几页并将这些文件上传回云存储。已成功上传。但是这些更改在立即通过浏览器访问时并没有反映出来。一段时间后它会起作用。当它反映后,我找不到时间模式。

任何人都知道如何在浏览器中立即反映更改。

我已清除所有缓存和 cookie。我已使用 control+F5 刷新页面,但它不起作用。我已经测试过 Firefox 和 Chrome。两者的行为相同。

我已经复制了下面的标题内容,

请求标头

用户代理:Mozilla/5.0 (Windows NT 6.1; WOW64; rv:53.0) Gecko/20100101 Firefox/53.0 接受:text/html,application/xhtml+xml,application/xml;q=0.9,/;q=0.8 接受语言:en-US,en;q=0.5 接受编码:gzip,放气 连接:保持活动 升级不安全请求:1 Pragma:无缓存 缓存控制:无缓存

响应标头

X-GUploader-UploadID:AEnB2UpLL0HQXX5kBesLWzBDywY7Wyry1yA7WjPEnQT0YtH-Jg4PHl5kBHAGjqiATWSZ1-AJKX9IsrPbzP4lUZvtF2IAvbqxhA 过期时间:2017 年 5 月 8 日星期一 16:59:50 GMT 日期:2017 年 5 月 8 日星期一 15:59:50 GMT 最后修改时间:2017 年 5 月 8 日星期一 15:53:53 GMT 电子标签:“af73f0909ae13b8cc6298d8a58640046” x-goog-代:1494258833242504 x-goog-metageneration:1 x-goog-stored-content-encoding: 身份 x-goog 存储内容长度:24795 x-goog-meta-goog-reserved-file-mtime: 1494258821 内容类型:文本/html 内容语言:en x-goog-hash: crc32c=fOshiQ==, md5=r3PwkJrhO4zGKY2KWGQARg== x-goog-storage-class:区域 接受范围:字节 内容长度:24795 服务器:上传服务器 缓存控制:公共,最大年龄=3600 年龄:2128

【问题讨论】:

    标签: caching google-cloud-storage browser-cache website-hosting


    【解决方案1】:

    默认情况下,Google 本身会将公开可读的对象缓存长达一小时。刷新本地缓存无济于事。您可以通过在上传对象时指定特定的缓存控制策略来更改此行为。您也可以在事后更改此属性,但它不会从缓存中删除对象,直到时间用完。

    您还可以通过显式指定对象的代或向 URL 附加一些无意义的查询参数来下载新版本的对象,例如 ?skipCache=1234

    【讨论】:

      【解决方案2】:

      【讨论】:

      • 您有此声明的实际来源吗?缓存由浏览器和 CDN 控制,而不是由 GCS 控制。按照您的建议添加任意查询参数似乎只会在带有查询参数的 URL 处缓存一个新资源,然后像以前一样继续重用。
      • 您好,是的,ingoreCache 只是一个随机参数,用于生成新的 URL 资源,如您所说。这是建议的解决方法。编辑我的回复以链接其他相关的 Stack Overflow 问题。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-10-12
      • 2020-09-10
      相关资源
      最近更新 更多