R2 + PicGo + TinyPNG 搭建免费图床
Cloudflare R2PicGoTinyPNG图床
为什么选 R2
Cloudflare R2 的免费额度:每月 10GB 存储、100 万次写操作、1000 万次读操作,个人博客完全够用。关键优势是零出口费用——图片被频繁访问不产生额外流量费,这在 S3 上是大头。
R2 兼容 S3 协议,任何支持 S3 的工具都能直接用。
R2 配置
- Cloudflare Dashboard → R2 → 创建存储桶,记下 S3 API 地址(后续 PicGo 配置要用)
- 公开访问:启用 r2.dev 子域,或绑定自定义域名。自定义域名在 Cloudflare 上管理 DNS 会自动添加记录,否则需手动配置
- 右上角"管理 R2 API 令牌" → 创建令牌,保存 Access Key ID 和 Secret Access Key
PicGo 配置
PicGo 是跨平台的图片上传工具,支持拖拽、剪贴板、快捷键上传。
安装两个插件:
- S3 插件:将图片上传到 R2
- TinyPNG 插件:上传前自动压缩
S3 插件配置
| 配置项 | 值 |
|---|---|
| Access Key ID | R2 令牌的 Access Key ID |
| Secret Access Key | R2 令牌的 Secret Access Key |
| Bucket | 桶名称 |
| 自定义节点 | S3 API 地址(不带桶名) |
| 自定义域名 | r2.dev 域名或自定义域名 |
| 路径 | img/{year}/{month}/ |
TinyPNG 插件配置
到 tinify.cn 注册,每月 500 张免费额度。获取 API Key 后在 PicGo 插件设置中填入并启用。
测试:125KB 图片上传后压缩到约 24KB,压缩比 80%+。
防盗链
Cloudflare 默认对 r2.dev 域名启用防盗链。如果需要多域名访问,在 Cloudflare → 安全性 → Hotlink 保护中配置允许的域名列表。
小结
这套组合上线后上传流程从"手动压缩 → 上传 FTP → 复制链接"变成"截图 → Ctrl+V → 链接已在剪贴板"。免费、稳定、快。