搭建个人图库最优省钱架构:Cloudflare R2 免费存储 + CDN 拆分方案
个人图库/静态资源站最优省钱架构
搭建个人图库或静态资源站,最大的痛点不是技术,而是成本。图片和视频文件大、访问频率高,传统方案动辄月费几十上百。今天分享一套实测可用的架构:Cloudflare R2 免费存储 + 已备案加速域名走国内 CDN + 未备案域名绑定 R2 充当源站,10GB 素材常年月消费 0 元。
核心架构:两套域名,各司其职
这套方案的精髓在于源站域名和加速域名拆分:
| 角色 | 域名要求 | 用途 |
| R2 源站域名 | 未备案域名(.top/.xyz 等) | 仅做国内 CDN 回源地址,不面向用户 |
| 前端加速域名 | 已备案二级域名(img.xxx.com) | 访客实际访问地址,接入国内 CDN |
政策解读:工信部只要求面向国内用户的加速域名备案,源站域名在境外 Cloudflare 托管、仅做回源,无备案要求。
访问链路
国内用户:访问已备案 img.xxx.com → 国内 CDN 命中缓存直接返回(0 回源流量)→ 未命中则回源到未备案 R2 域名 → CF 拉取 R2 文件 → 缓存 365 天
海外用户:DNS 不走国内 CDN,直接解析到 Cloudflare → CF 全球节点免费读取 R2 资源,全程不消耗国内计费流量
两种落地配置
方案一:正式推荐(源站独立未备案域名)
- 准备 1 个未备案域名,NS 接入 Cloudflare
- R2 存储桶绑定该域名(如 source.abc.xyz),CF 开启 SSL
- 国内 CDN 添加已备案加速域名 img.xxx.com,回源 HOST 填 source.abc.xyz
- DNS 分流:img.xxx.com 国内 CNAME 到 CDN,海外交由 CF 接管
✅ 优势:源站和加速域名隔离,方便在 CF 配置 WAF/Referer 防盗链,双重防护。
方案二:极简测试(r2.dev 默认域名)
直接用桶自带的 xxx.r2.dev 做回源地址,无需额外域名。缺点是 CF 有隐性限流,无法精细化防护,仅适合临时测试。
长效缓存配置(省钱核心)
| 文件类型 | 缓存时长 |
| 图片(JPG/PNG/WebP/GIF)、ICO | 365 天 |
| MP4 短视频、静态附件 | 365 天 |
| JS/CSS 静态脚本 | 30 天 |
省钱逻辑:10GB 素材首次全量访问仅一次性回源,后续 365 天全部命中缓存,不再回源 R2,无新增计费流量。
CDN 费用测算(10GB 存量)
- 七牛云 CDN:新用户每月赠送 10GB 免费流量,首月回源吃光免费额度 = 0 账单;缓存生效后全年 0 费用
- 百度智能云 CDN:100GB 包年 18 元,覆盖全年零星回源,封顶年费 18 元
正常不手动全量刷新缓存、不频繁替换资源,全站点年成本 0~20 元。
五层防盗刷
盗刷分为第三方外链盗图和恶意爬虫批量抓取两类,双层防护锁死账单上限:
- CDN Referer 白名单:填写 *.你的备案域名,拦截空 Referer 请求,其他网站外链直接返回 403
- CDN 月度流量封顶:按月设置上限 10GB,触达自动关停,账单永不超标
- 单 IP 下载限速:限制 200~500KB/s,爬虫无法短时间跑满流量
- CF 源站二次防护:设置 Referer 白名单仅放行 CDN 回源 IP;WAF 拦截 python/curl/wget 等爬虫 UA
- URL 时效防盗链(进阶):高清原图开启签名鉴权,链接带时效密钥,到期自动失效
避坑要点
- 严格拆分两套域名:加速域名 = 备案(用户访问),R2 源域名 = 未备案(仅回源)
- 源站域名全程托管 CF,不做国内 DNS 解析
- 海外用户全部走 CF 免费 CDN,不消耗国内付费流量
- 禁止 CDN 后台一键全量刷新,会触发整站重新回源,消耗免费额度
总结
「备案域名做前端加速 + 未备案域名绑定 R2 充当源站」的拆分方案,既符合国内备案法规,又利用 R2 10GB 永久免费存储 + 365 天长缓存实现近乎零成本运营,叠加多层防盗链规避恶意刷流量,是目前个人静态资源站性价比最高、落地最稳妥的方案。
- 上一篇: Cloudflare R2 实战:让视频和照片真正流畅播放
- 下一篇: 没有了