【问题标题】:How to update distribution in google cloud cdn?如何更新谷歌云 CDN 中的分布?
【发布时间】:2020-08-27 06:15:51
【问题描述】:

我刚开始使用 google cloud cdn,从我公司的 aws 迁移过来。

在 aws 中,我们可以使用 ssl(使用 CloudFront)通过 s3 为静态站点提供服务。但是,当我更新 s3 时,我也需要在云端更新我的发行版。

在 GCP 中,我已经设置了负载均衡器,其中包括指向我的云存储的云 CDN。但是我看不到刷新分发的选项。如果我在云存储中更新我的网站,如何刷新我的 cdn?

【问题讨论】:

    标签: google-cloud-platform


    【解决方案1】:

    无法在 GCP 中手动启动 CDN 缓存更新。

    不过,您可以使用versioned URLs 向用户提供更新的内容;

    版本控制内容提供相同内容的不同版本, 通过在缓存之前向用户显示新内容来有效地删除它 条目过期。因为版本控制是免费且易于使用的,所以我们 建议您使用版本控制作为更新的默认方法 可缓存的内容。

    您还可以通过max-age 值 (expiration time) 来影响内容更新频率的变化,Cache Control in GCP buckets 上的更多信息。

    请注意,如果您允许缓存,在下载时您可能会看到较旧的 上传更新的替换对象后的对象版本。笔记 也因为对象可以缓存在不同的地方 互联网没有办法强制缓存对象全局过期 (与您可以强制浏览器刷新其缓存的方式不同)。如果 您想阻止提供公开可读的缓存版本 对象,在对象上设置“Cache-Control:no-cache, max-age=0”。

    你也可以change caching settings on already uploaded datagcloud

    【讨论】:

      【解决方案2】:

      这在 Google Cloud Console 和 gcloud 命令行工具中都是可能的。[1]

      您可以使单个页面无效:

      gcloud compute url-maps invalidate-cdn-cache LOAD_BALANCER_NAME \
          --host HOSTNAME \
          --path "/images/file.jpg"
      

      您可以使目录无效:

      gcloud compute url-maps invalidate-cdn-cache LOAD_BALANCER_NAME \
          --host HOSTNAME \
          --path "/images/*"
      

      或者您可以使所有内容无效:

      gcloud compute url-maps invalidate-cdn-cache LOAD_BALANCER_NAME \
          --host HOSTNAME \
          --path "/*"
      

      在所有情况下,如果您希望将 --host 参数应用于所有主机,您都可以排除它。

      [1]https://cloud.google.com/cdn/docs/invalidating-cached-content

      【讨论】:

        猜你喜欢
        • 2020-09-10
        • 2018-12-11
        • 2020-12-31
        • 2021-10-06
        • 2023-02-08
        • 2020-12-22
        • 2020-09-06
        • 1970-01-01
        • 2016-12-26
        相关资源
        最近更新 更多