两种模式
| 公开读 | 签名 URL(私有) | |
|---|---|---|
| 原理 | 桶允许匿名 GET,地址永久有效 | 桶拒绝匿名,地址带签名与过期时间 |
| 适合 | 内容站、无付费墙 | 付费内容、隐私文件 |
| 缓存 | 可以长缓存 (默认 30 天) | 签名会过期,页面缓存时长必须小于签名有效期 |
| 风险 | 知道地址就能下载 | 签名算法暴露密钥?不会——签名只在服务端计算 |
Cache-Control
对象写入时的 Cache-Control 响应头决定 CDN 与浏览器缓存:留空用智能默认 (公开读 30 天 / 签名 1 小时),也可以自定义如 public, max-age=604800 。改设置只影响新上传的对象,存量对象要重新覆盖或用厂商工具改头。
签名模式的重要提醒
开了签名访问后,页面缓存 (含 CDN 的 HTML 缓存) 里存的签名地址会随时间失效。规则:页面缓存时长 ≤ 签名有效期的一半。默认签名 1 小时,页面缓存最长 30 分钟,否则访客会看到裂图。
切换模式
公开读 ↔ 签名可以随时切,地址改写是渲染期的。但桶的匿名权限要自己在云控制台改:公开读要求桶策略允许匿名 GET;签名模式建议桶设为私有。
