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

如何使用Azure Frontdoor标准缓存CDN缓存Picsum图片?

Azure Frontdoor标准CDN缓存Picsum图片的解决方案

问题根源

Picsum.photos默认返回的响应头包含Cache-Control: max-age=0这类指令,会强制CDN每次回源请求新图片,直接覆盖了你设置的缓存规则。另外,https://picsum.photos/2000这类无ID的URL本身就会随机返回图片,得确保CDN能忽略源站缓存头,牢牢缓存第一次拉取的内容。

解决步骤

  • 配置自定义缓存规则(优先级高于全局规则)

    1. 进入你的Azure Frontdoor标准CDN端点的「缓存规则」页面
    2. 创建自定义规则,优先级设为1(比全局规则更高)
    3. 匹配条件选「路径」,运算符用「等于」,值填/2000;或者选「文件扩展名」,运算符「包含」,值填.jpg,.jpeg(覆盖所有图片格式)
    4. 缓存行为选「覆盖」,设置过期时间为30分钟
    5. 必须勾选「忽略源站的Cache-Control头」,这是让CDN不服从源站缓存指令的关键
  • 验证缓存是否生效

    1. 通过CDN域名访问图片,比如https://your-cdn-endpoint.azureedge.net/2000
    2. 打开浏览器F12的「网络」标签页,查看图片请求的响应头:
      • 出现X-Cache: HIT即表示命中CDN缓存
      • Cache-Control头应显示max-age=1800(对应30分钟的秒数)
  • 可选优化:固定Picsum图片ID
    使用带固定ID的Picsum URL,比如https://picsum.photos/id/10/2000,源站会返回固定图片,配合CDN缓存规则能获得更稳定的缓存效果。

避坑提醒

  • 不要仅依赖全局缓存规则,它优先级低于自定义规则,容易被源站响应头覆盖
  • 确认CDN端点已正确关联App Service,且DNS解析已生效
  • 测试时避免使用Ctrl+F5强制刷新,这会跳过本地缓存并触发CDN回源请求

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.02 21:45:34