Cloudflare Workers 不遵守缓存源标头

Cloudflare Workers 不遵守缓存源标头

我编写了一个使用 Cloudflare Images 的 Cloudflare Worker。

默认情况下,Cloudflare Workers 会发送“14400”作为最大年龄用于缓存目的的值。我想改用“31536000”(365d),以匹配我的原点配置。

我阅读了 Cloudflare 的文档、有关此问题的各种社区帖子以及一些 StackOverflow 帖子,并尝试了以下 3 种解决方案:

  1. 将 Cloudflare 中的默认浏览器 TTL 从 4 小时(14400)更改为“尊重来源标头”。

    试了一下,“14400”消失了,变成了“0”

  2. 直接在 CF Worker 中覆盖浏览器 TTL:

    options.cacheControl = { browserTTL: 31536000 }

    试过了,没有影响

  3. 直接在 CF Worker 中覆盖 Edge TTL:

    options.cacheControl = { browserTTL: 31536000, edgeTTL: 31536000 }

    试过了,没有影响

我对我们的原始服务器进行了三次检查,它返回了有效的缓存控制标头:

expires: Tue, 16 May 2023 18:45:00 GMT
Cache-Control: max-age=31536000
Cache-Control: public

我这里遗漏了什么吗?

答案1

在 Cloudflare 支持人员调查此问题后,我们的 Cloudflare 工作人员最终开始考虑我们的 Origin 缓存标头。

我们没有做任何改变,所以这个问题很可能是由于传播改变所需的时间造成的。

相关内容