部分图片迁移Cloudflare R2 + WebP Cloud

稚 发布于 2024-11-13 49 次阅读


图片存储迁移

前言

更新一下博客的图片使用的存储方式

最开始的时候博客使用的是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 服务需要绑定信用卡(国内外主流信用卡皆可),但并不会扣费,主要是为了验证用户身份使用。

创建存储桶

image-20241113213529710

写一个又标识的名称 因为常为亚太地区访问所以设置为亚太

image-20241113213620275

点击设置

image-20241113213734063

点击允许访问 输入[allow]就可以了

连接域 可自行选择是否打开 。分配的网址比较长,不易于记忆,我们可以通过「自定义域」来绑定我们的专属域名,点击「连接域」按钮

image-20241113213936399

配置 Bucket 访问 API

image-20241113214152257

创建密钥选择读和写 指定存储桶

image-20241113214229419

点击确定

之后界面只出现一次 请务必保存好信息

Piclist 设置

下载https://piclist.cn/

点击图床 点击加号配置如下内容

  • 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的自定义域名设置为代理的地址

最后更新于 2024-11-13