- Backblaze B2/Cloudflare R2: 文件储存
- PicGo :文件上传+文件压缩
B2 的存储是免费 10G,CDN 联盟之间流量是免费的,通过 Cloudflare Workers 访问基本是够用了。
# 1. 注册Backblaze
- 创建桶, public 需要1刀,选 private 的就好
- 创建 application key
# 2. 配置 Cloudflare Workers 访问 Backblaze B2
官方教程: https://www.backblaze.com/docs/cloud-storage-deliver-private-backblaze-b2-content-through-cloudflare-cdn
先安装 wrangler: `npm install -g wrangler`
init project 的三个方法
- clone templte: `wrangler generate my-proxy https://github.com/backblaze-b2-samples/cloudflare-b2` 提示已经不推荐这个方法
- 新的方式: npm create cloudflare@latest -- b2-proxy-worker,会提示让你输入 git url, 结果报错 no wrangler.toml
- 最方便可能是: 直接 git clone, 修改 cp wrangler.toml
接下来执行
`npm install`
`wrangler deploy`
workers 就已经成功部署了
# 3. workers设置自定义域名
方法一:
直接在 cloudflare dash, workers settings 直接加
方法二:
本地修改 wrangler.yaml 再 deploy
注意: domain 不能放到 [vars] 里面,否则不生效,在这里浪费了不少时间
# 设置密钥, 而不是明文写在文件中
B2_APPLICATION_KEY_ID = "xxx"
B2_APPLICATION_KEY="xxx"
B2_ENDPOINT = "xxx"
BUCKET_NAME = "xxx"
ALLOW_LIST_BUCKET = false
wrangler secret put B2_APPLICATION_KEY_ID
wrangler secret put B2_APPLICATION_KEY
wrangler secret put B2_ENDPOINT
wrangler secret put BUCKET_NAME
wrangler secret put ALLOW_LIST_BUCKET
# 设置 cache
Backblaze 默认没有设置缓存,这样每次Cloudflare Workers都会到Backblaze源服务器取数据。
到Backblaze 后台点开桶设置
设置 Bucket Info 为 {"cache-control":"max-age=720000"},即72000s更新
注意:源文件更改会不会及时更新,按需求配置
粗略记录一下过程
文章评论