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