迁移图床从Github到Cloudflare R2
博客建站伊始就再用Github+CDN的方法存储图片,目前Github的免费CDN均出现了无法访问和加载缓慢的情况,碰巧最近在查看CloudFlare账单时看到了R2服务,给的免费额度也十分充足,索性决定去尝试CloudFlare R2存储。
为什么放弃Github选择了CloudFlare R2服务
放弃Github的原因很简单,总结下来就是Github+CDN的使用体验确实一般,博客小图场景的加载速度没有什么问题,但遇到相册或视频类的大文件加载时总是会出现加载错误的情况,在此之前,照片和视频我选择了七牛云进行存放,虽然使用下来费用并不高,但每次分开上传的体验并不好,也会极大的消磨我创作的热情。
CloudFlare R2的资费也算是诸多运营商中极低的那一梯队,且对于我来说,免费额度已经绰绰有余了,在免费额度用完后再开始将多出的流量或存储空间进行计费。
相较于Github做图床存储,CloudFlare R2无疑是要更专业、安全且稳定的,而且R2费用十分亲民,在众多存储中也算是遥遥领先了。
CloudFlare R2资费
- A 类操作成本更高并且容易改变状态。
- B 类操作倾向于读取现有状态。
免费额度 | 付费额度 | |
---|---|---|
存储 | 10 GB/月 | 每月 0.015 美元/GB |
A类操作 | 每月 100 万个请求 | 4.50 美元/百万请求 |
B类操作 | 每月 1000 万个请求 | 0.36 美元/百万请求 |
部署存储桶
创建
这里的地区可以选择自动,然后选择亚太地区;这里的地区代号建议记住,部分S3 API需要填入地区代号。
创建完成后进入该界面,可以将原先图床的图片快速导入。
在Web界面R2服务中一次只能上传100个文件,如果需要快速上传超过100个文件,建议去使用CLI或可以连接S3 API的工具,这里我使用的是安装在路由上的Alist,无需代理上传下载可以跑满1000M带宽。
公开访问\绑定域名
公开访问这里的连接域的前提是需要一个通过CF解析的域名,如果没有,那么只能去使用有着部分功能限制的R2.dev子域。
以上,就是R2创建存储桶的全部步骤了,接下来是PicList\PicGO的配置步骤。
创建R2 API
我们回到R2概述页面,在界面右侧或下侧找到“管理R2 API令牌”
点击进入,并点击“创建API令牌”,权限配置如下图。
取得accessKeyID和secretAccessKey后一定要复制并保存,这里的密钥只会显示一次。
配置PicList
· 图床配置名:随意填写,备注
· accessKeyID和secretAccessKey是刚刚在创建API时保存的密钥,复制填入即可
· Bucket是你创建的R2存储桶的名称
· 上传路径则是图片在存储中的路径,我使用的路径是img/{year}/{month}/{year}{month}{day}.{fullName}
· 自定义节点是在存储桶——设置——存储桶详细信息——S3 API的地址
· 自定义域名则是公开访问中的自定义域的域名
本作品采用 知识共享署名-相同方式共享 4.0 国际许可协议 进行许可。