You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何强制Cloudflare缓存被判定为CF-Cache-Status: DYNAMIC的API

Cloudflare页面规则缓存GET API返回DYNAMIC的解决方案

核心问题排查与修复步骤

  • 修正无效的页面规则匹配逻辑

你当前配置的匹配URL https://.com:8443/cache_* 本身是无效规则,缺少域名主体,不会命中任何请求。请将匹配规则改为对应你实际业务域名的格式,例如:

*://你的实际域名:8443/cache_*

同一条规则内除了设置Cache Level: Cache Everything,还需要补充两个配置:

  1. 显式设置Edge Cache TTL为你需要的缓存时长(例如10分钟)
  2. 按需开启Origin Cache Control: Off,强制忽略源站返回的缓存控制头
  • 排查源站响应头限制

Spring Boot默认返回的响应头会触发Cloudflare的动态内容判定,你可以绕开Cloudflare直接请求源站,检查是否存在以下字段:

  1. Set-Cookie:Cloudflare默认不会缓存返回Set-Cookie的响应,如果是公共无用户态的接口,可以在Spring Boot侧去掉该响应头,或者在页面规则中添加Remove Set-Cookie Header配置
  2. Cache-Control: no-cache/no-store/private:这类头会直接禁止缓存,要么在Spring Boot接口中手动返回Cache-Control: public, max-age=600,要么通过上面提到的Origin Cache Control: Off配置强制覆盖
  • 确认代理状态正常
  1. 检查域名解析记录为橙色云(代理模式),灰色云(仅DNS)模式下所有页面规则、缓存配置都不会生效
  2. 确认8443端口属于你Cloudflare套餐支持的代理端口范围,免费套餐默认支持该端口
  • 验证配置生效

调整完成后多次执行命令测试:
curl -I https://你的实际域名:8443/cache_xxx
第二次请求返回CF-Cache-Status: HIT即为配置成功。

内容的提问来源于stack exchange,提问作者Ujjwal Singh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 17:15:03