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

如何配置Cache-Control头:绕过设备缓存且允许CDN缓存?

HTTP轮询检测网络状态的缓存控制配置方案

要实现「客户端不使用本地缓存、CDN可缓存文件无需每次回源」的需求,需要配合设置客户端请求头和源服务器响应头:

一、客户端请求头设置

发送GET请求时,携带以下请求头:

Cache-Control: no-cache

或者等价配置:

Cache-Control: max-age=0

这两种配置都会强制客户端跳过本地缓存,直接向CDN发起请求,确保轮询能真实检测当前网络连通性。

二、源服务器响应头设置

源服务器返回/static/byte.txt时,需要返回以下响应头:

Cache-Control: public, s-maxage=86400, must-revalidate

各参数作用:

  • public:允许CDN等共享缓存节点存储该文件
  • s-maxage=86400:指定CDN的缓存有效期(示例为1天,可根据实际需求调整时长),该参数仅对共享缓存生效,优先级高于通用的max-age
  • must-revalidate:当CDN缓存过期后,必须回源验证文件是否更新,不能直接返回过期缓存;但在缓存有效期内,CDN可直接返回缓存给客户端,无需回源

额外优化建议

同时给文件配置ETag或Last-Modified响应头,这样CDN收到客户端的验证请求时,可通过If-None-Match或If-Modified-Since头判断缓存是否有效,仅在文件更新时返回完整内容,进一步优化传输效率。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.13 06:25:28