尝试将 Cloud CDN 缓存模式更改为“使用原始设置 ...”会导致错误“字段 'resource.cdnPolicy.defaultTtl' 的值无效:'0'”
Posted
技术标签:
【中文标题】尝试将 Cloud CDN 缓存模式更改为“使用原始设置 ...”会导致错误“字段 \'resource.cdnPolicy.defaultTtl\' 的值无效:\'0\'”【英文标题】:Attempting to change Cloud CDN cache mode to "Use origin settings ..." causes error "Invalid value for field 'resource.cdnPolicy.defaultTtl': '0'"尝试将 Cloud CDN 缓存模式更改为“使用原始设置 ...”会导致错误“字段 'resource.cdnPolicy.defaultTtl' 的值无效:'0'” 【发布时间】:2021-06-22 07:10:46 【问题描述】:我有一个后端服务,我想更改它的Cloud CDN“缓存模式”。
当前设置是“强制缓存所有内容”。如下所示:
当我尝试将其更改为“使用基于缓存控制标头的原始设置”时:
我收到错误 Invalid value for field 'resource.cdnPolicy.defaultTtl': '0'. default_ttl cannot be specified with USE_ORIGIN_HEADERS cache_mode.
:
我该如何解决这个问题?
编辑:这是一个 GCP 错误:https://issuetracker.google.com/issues/183625573
【问题讨论】:
能否提供整个服务的复制步骤?我尝试设置类似的CDN,但没有遇到任何错误。 我向 GCP 报告了该错误并忘记了这个问题。这是问题跟踪链接:issuetracker.google.com/issues/183625573 【参考方案1】:可能是前端的错误?我能够从命令行修复它:
gcloud beta compute backend-services update [backend_name_here] --global --cache-mode=USE_ORIGIN_HEADERS
您可以在屏幕截图的页面顶部找到backend_name_here
。对我来说,格式为k8s-be-...-...
注意:我添加--global
是因为没有这个参数找不到后端服务。如果你的后端服务有一个特定的区域,你可能不想使用它(你可能需要使用--region
)。
更多信息:https://cloud.google.com/sdk/gcloud/reference/compute/backend-services/update
【讨论】:
GCP 已经承认这是一个错误:issuetracker.google.com/issues/183625573。您的回答可能是一个有效的解决方法。以上是关于尝试将 Cloud CDN 缓存模式更改为“使用原始设置 ...”会导致错误“字段 'resource.cdnPolicy.defaultTtl' 的值无效:'0'”的主要内容,如果未能解决你的问题,请参考以下文章
ini MODX Cloud中的Web规则(nginx conf),用于CDN,代理缓存资产和statcache
ini MODX Cloud中的Web规则(nginx conf),用于CDN,代理缓存资产和statcache