关于 Cloudflare + Backblaze 最佳实践

2025 年 1 月 2 日
 Jafee

有几个问题想请教使用过的大佬:

  1. B2 桶 一般会设置为 public 还是 private ?
  2. 可以限制 B2 的流量全部是通过 cloudflare 访问吗?

理想情况下,B2 是不是只用到存储的费用即可,不会再因为流量而付费,因为 cf CDN partner 。如果不可以的话,怎么可以有效的防止被刷的情况?先感谢回复啦

3210 次点击
所在节点    问与答
26 条回复
iloveayu
2025 年 1 月 2 日
1. 都可以建议 private ,实际 private 也是可以和 CF 配合的,需要搭配 CF 的 worker 。
2. 可以,private 必须用 api key 访问 B2 ,防被刷。
至于如何实现,那是没有现成的方案,思路是自己写一个 cf worker 的反代到 B2 上,代理时带上你的私有 key 去读 B2 上的文件。
同时,你需要处理 cf worker 返回给客户端时的一些 header ,因为其可能暴露你的 B2 原始桶名称,不过你是 private 的情况下,有桶名称别人也刷不到。
ZeroClover
2025 年 1 月 2 日
设置为 Private 需要配合 Worker 或者 Rule Snippet 使用。Worker 按请求次数收费,Rule Snippet 需要 Pro 订阅。

B2 除了储存费用以外还需要付 API 调用费用
longsays
2025 年 1 月 2 日
@iloveayu 可以私有,建议使用 worker 定时更新重写 URL 规则,带上鉴权参数就行,避免 worker 请求数超,不会流量付费,但 B2 会有请求数计费,可以后台限制,避免刷超
fbcskpebfr
2025 年 1 月 2 日
设置为 public 桶可以考虑把桶名称设置为长随机字符串,然后通过 CF 处理时去掉一些和 b2 有关的 header

设置为 private 桶则需要 workers ,例如
https://github.com/backblaze-b2-samples/cloudflare-b2
Jafee
2025 年 1 月 2 日
@iloveayu @ZeroClover @longsays @ruimz 感谢大家,顺便问一句,cf paid worker 防止巨量超量的方式是不是加邮件提醒,自己处理? 有什么好的方法来阻止被恶意刷的情况吗?
iloveayu
2025 年 1 月 2 日
@Jafee 再用 cf worker 写一个监控,调用量超过你设置的阈值自动关站
longsays
2025 年 1 月 2 日
@Jafee 使用重写 URL 规则带鉴权参数就不依赖 worker 了,worker 每天消耗 1-2 次更新规则就好
Jafee
2025 年 1 月 2 日
@longsays 更新规则是指?
longsays
2025 年 1 月 2 日
@Jafee https://www.longsays.com/2130.html
先有公开桶的隐藏路径规则,然后用 worker 定时更新,在这个规则上加鉴权参数
longsays
2025 年 1 月 2 日
@Jafee 这样完全不怕刷,默认有 CF 缓存,就算被刷了也有 B2 限额打底,这个咨询过 B2 客服了,限额完全不会超的
longsays
2025 年 1 月 2 日
https://i1.du0.org/file/453d22da3c18847e43407.png
比如这个地址就是在 B2 私有桶按上述方法实现的
Jafee
2025 年 1 月 2 日
@longsays 赞,这个方法真的好。但我猜,大批量调用时 b2 肯定会发现这个异常的账号,哈哈
longsays
2025 年 1 月 2 日
@Jafee 这个不算异常吧,合法合规
私有桶可以携带鉴权参数是官方就有的
然后 CF 免流也是官方自己合作的,而且本身也能用公开桶,只是不想暴露或者暴露了也不怕刷而已
Jafee
2025 年 1 月 2 日
@longsays 很赞,我也打算先采用这种方法了
longsays
2025 年 1 月 2 日
@Jafee 如果后续有一天合作终止,CF 不免流了,然后也有其他更优惠的厂商,S3 可以直接 rclone 同步过去,地址原封不动,方便迁移
summerwar
2025 年 1 月 2 日
@longsays #11 你是不是在 nga 上发帖求过这张照片?
longsays
2025 年 1 月 2 日
@summerwar 应该不是我,nga 没号
summerwar
2025 年 1 月 2 日
@longsays #17 之前有人在 nga 上发帖求过一张壁纸,内容是二次元 女孩 高处,看到你的照片的瞬间,我就想起来那个贴子了,刚又去 nga 发了帖子,希望那个老哥能看到吧。感谢
loveshuyuan
2025 年 1 月 2 日
除了流量费用 b2 还有请求次数费用
Ghjvn
2025 年 1 月 2 日
有个问题,如果是图床,大家是手动上传到 B2 后粘贴链接,还是直接在博客网站内上传呢。

如果是博客网站( ghost )内直接上传,在开启 cloudflare CDN 的前提下,上传限制 100M ,请问这个怎么突破

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://study.congcong.us/t/1101976

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX