使用 cloudflare R2免费搭建自用图床

#hugo #cloudflare

cloudflare 提供了一个叫 R2 的服务,也是 OSS ,成本对个人用户几乎免费、不用备案,相对速度属于能用,非常合理。R2 定价说明文档。10 个 G 以内的存储和 1 千万的查询都是免费的,于是,本 blog 有了几乎免费的图床可以使用了。

过程也比较简单,分享下:

  • 前置要求,首先需要有一个自己的域名
  • 注册 cloudflare 省略。
  • 登录 cloudflare,把域名解析服务器配置到 cloudflare。这样方便在使用 R2 的时候绑定一个自己的域名。参考教程 将 Cloudflare 设置为 DNS 域名解析服务器

开通 R2 服务

  • 在侧边菜单找到 R2 服务。启用 R2 服务需要绑定一个信用卡,国内信用卡是可以开通服务的。我用的是建行 master 信用卡。开通时网络无需翻墙,不然会出现信用卡验证不通过。

创建存储桶

  • 接下来就可以创建桶了,存储服务一般都这样,为什么叫桶我也不知道,并不影响什么。取个名就是了,可以理解为文件夹名也行,反正是个人使用。

关联域名

  • 建好桶后,这时候已经可以上传图片、文件之类的了,但默认这个桶是公网不可访问的。去设置里配置下公开访问-链接域。虽然也可以用 cloudflare 提供的二级域名访问,但是那种方式一是有一些频率方面的限制,而是.dev 的域名也被大防火墙拦截了,所以还是用自己的域名更好一些。
  • 域的地址例如:static.yourdomain.com 。之后图片的公网访问路径就类似是 static.yourdomain.com/picURL
  • 配置完成后,上传图片,用刚刚配置的域名加上传后的文件名,即可访问到文件。比如本文的所有图片都是用的 R2 服务托管的。在文件列表点击进入到详情页也可以看到文件的 3 种不同路径地址

打开 R2 的 API token

  • 为了方便传图,日常会使用 uPic 传图工具。此工具可以自定义配置服务。需要用的 api token。
  • 在 R2 的控制台右侧 点击 管理 R2 API 令牌 —>创建API令牌。权限选编辑(即读写都可),ttl 选永久。其他不变。
  • api 令牌只会显示 1 次。需记录到本地备用。

配置 uPic 客户端

20230721ScreenShot2023-07-21at12.50.08AM