图片存储迁移
前言
更新一下博客的图片使用的存储方式
最开始的时候博客使用的是GitHub+vercel提供加速的方式,但是vercel偶尔容易在国内死掉 所以迁移到了GitHub + jsDelivr CDN + PicGo的方式,但是jsDelivr 遭到了 DNS 污染,被大陆封锁,以至于我的博客图片在很长一段时间完全无法加载。而且依赖于Github算是一种滥用 。后来看到風雪城写的关于百度的图床用法,写了一篇文章白嫖某度CDN当博客图床没用几天图片全部无法访问了出现了参数错误 估计百度修复这个bug了吧 。最后想了一下还是决定使用oss存储 。之前就一致在用cloudfile的服务 忽然想到它有一个R2存储还是10G每月免费 而且我还有一个eu.org的免费域名于是想到了Cloudflare R2 + WebP Cloud + Piclist的方式
Cloudflare R2 + WebP Cloud + PicList
为了优化用户的访问,又使用了一个「WebP Cloud」服务对 R2 的图片进行代理,在代理层面进一步减小图片体积,虽然对于国内用户来说速度肯定还是比不上阿里云 OSS 这种线路,但是在不用备案、稳定且免费的综合条件下,这是我能想到的最好的方案了。
搭建说明
R2 是 Cloudflare 推出的免费对象存储服务,需要免费注册一个 Cloudflare 账号才能使用,注册登录后,点击左侧边栏的 R2 访问服务,但需要注意的是开通 R2 服务需要绑定信用卡(国内外主流信用卡皆可),但并不会扣费,主要是为了验证用户身份使用。
创建存储桶
写一个又标识的名称 因为常为亚太地区访问所以设置为亚太
点击设置
点击允许访问 输入[allow]就可以了
连接域 可自行选择是否打开 。分配的网址比较长,不易于记忆,我们可以通过「自定义域」来绑定我们的专属域名,点击「连接域」按钮
配置 Bucket 访问 API
创建密钥选择读和写 指定存储桶
点击确定
之后界面只出现一次 请务必保存好信息
Piclist 设置
点击图床 点击加号配置如下内容
- Access Key ID :填写访问密钥 ID
- Secret Access Key:填写机密访问密钥
- Bucket: 填写 R2 中创建的 Bucket 名称
- 文件路径:也可选择使用
{fileName}.{extName}
来保留原文件的文件名和扩展名。 - 自定义节点,填写 R2 API 中的「为 S3 客户端使用管辖权地特定的终结点」,即
xxx.r2.cloudflarestorage.com
格式的 S3 Endpoint - 自定义域名,填写上文生成的
xxx.r2.dev
格式的域名或自定义域名
点击确认
WebP Cloud 图片优化
登录https://webp.se/连接Github 一天3000次免费压缩和加速请求次数 超过则使用源站请求.对于一般用户来说完全够用
主页点击创建代理
- 为了优化国内访问,我「Proxy Region」选择的是美西「Hillsboro, OR」区域
- 「Proxy Name」填写一个自定义名称即可
- 「Proxy Origin URL」,比较重要,需要填写上文我们配置好的 R2 自定义域名,如果没配置自定义域名则填写 R2 提供的
xxx.r2.dev
格式的域名
将piklist的自定义域名设置为代理的地址
Comments NOTHING