【问题标题】:Set default meta-data for all future uploaded objects in GCP Bucket为 GCP Bucket 中所有未来上传的对象设置默认元数据
【发布时间】:2020-01-26 09:54:31
【问题描述】:

我想知道如何为所有未来上传的对象设置默认元数据。

我正在尝试将“Cache-Control:public,max-age=3600”设置为托管静态网站的存储桶中每个对象的标头。对于所有现有对象,我使用指南命令设置元数据,但是,无法找到一种方法为将来上传的对象默认设置它。

P.S.,开发人员正在使用 GCP 控制台上传对象,我最近意识到,当他们上传更新的 HTML 文件(替换存储桶中的那个)时,元数据会重置。

【问题讨论】:

    标签: google-cloud-platform google-cloud-storage google-cdn


    【解决方案1】:

    根据documentation,如果对象没有Cache-Control 条目,则为该对象提供服务时的默认值为public,max-age=3600

    如果您仍想修改此元数据,您可以使用 Cloud Funtion 中的 JSON API 来完成,每次创建新对象或覆盖现有对象时,这将是 triggered .

    【讨论】:

    • 这很奇怪。我们存储桶中的对象没有任何缓存控制标签,但仍然没有通过 CDN 提供服务(0% 利用率)。只有在我们使用 gsutil 显式运行 setmeta 命令并设置 Cache-Control:public,max-age=3600 后,我们才看到通过 CDN 提供流量。
    • 只有在对象是公开可读的情况下才会提供“public,max-age=3600”缓存控制。
    • 嗨@MikeSchwartz,该存储桶中的所有对象都是公开可读的。我仍在尝试寻找在未设置缓存控制时未通过 CDN 提供流量的原因。
    • 您能否指定您在哪里看到此“CDN(0% 利用率)”?我的猜测是,缓存在设置“缓存控制”设置之前被禁用,因此不会通过 Cloud CDN 发送流量。因为根据文档描述(cloud.google.com/cdn/docs),Cloud CDN 用于缓存靠近最终用户的内容。
    • @Mayeru,我可以在 GCP CDN Stackdriver 中看到从 CDN 提供的 % 内容。一旦我明确设置了这个元数据,它现在大约是 80-90%...
    猜你喜欢
    • 2020-04-27
    • 1970-01-01
    • 2016-12-28
    • 2017-01-23
    • 1970-01-01
    • 2012-02-26
    • 2014-06-12
    • 1970-01-01
    • 2017-12-03
    相关资源
    最近更新 更多