白嫖!10GB 免流海外 BackBlaze 对象存储【可套 CDN】

腾讯云的 COS 就是个暗坑,进去的时候大肆宣扬用户前六个月免费,但实际上免费仅针对于存储于国内的 bucket,而存储于国外的阶梯定价又极不合理,我的 COS 在一个月走了流量 1.6GB。按照官方定价

大概就是 0.7 左右。

但是,腾讯云从来就是不满 1GB 按 1GB 计算的 jier,我瞟了一下账单:

不是吧啊 Sir,一个月一块多,那我为什么要用你的东西啊

很难让人理解,我 CDN 设置为一个月的超长缓存,但腾讯还是给我计价 1GB,和回源没什么区别。

后来 F12 看了一下,腾讯悄悄地在 header 里添加 max-cache 为 43200s,12 个小时强制清除缓存。Asir,赚钱不带这么玩吧。

最让我憋屈的是,cyfan.top 是没有备案的,使用国内的 bucket 就不给绑定域名,害的我只能用香港,但是香港的绑定域名是不给 SSL 的,偏要套一层 CDN 才行。可 *** 腾讯云默认 CDN 是亚马逊的,速度渣的很,用来用去还是用回 CloudFlare。可是,既然有 CloudFlare,那我为什么不用免费的 Github 服务啊!

这就是逼着我要换一个图床啊么

后来 twitter 上有人发推推荐 backblaze 的海外存储,使用了一下,发现完全满足需求。

Backblaze

2015 年 9 月,Backblaze 推出了新产品 B2 Cloud Storage。作为基础架构即服务(IaaS),它的目标是软件集成(尽管也提供 Web 前端和 API)。它直接与类似服务 Amazon S3,Microsoft Azure 和 Google Cloud 竞争。在 2018 年 4 月,Backblaze 宣布了云计算合作伙伴关系,它将直接将 Backblaze 的数据中心与其合作伙伴 Packet 和 ServerCentral 连接起来,为存储在 B2 Cloud Storage 中的数据提供高性能的云计算,而无需支付任何费用。

B2 Cloud Storage 非常客气,有以下优点:

  • 用户永久免费 10GB 直链存储
  • 每天 1GB 下行流量
  • 无限量的上传流量
  • 每天下载请求 2500 次免费
  • 每天上传请求 2500 次免费
  • 基于 CloudFlareCDN

而且超出免费额度的价钱也十分合理【不过我不会往里头冲一分钱的!】 https://unpkg.zhimg.com/chenyfan-oss@1.0.0/pic/postpic/2020-07-09%20100931.jpg

然而我偶然得知,Backblaze 加入了 CloudFlare 的 带宽联盟( Bandwidth Alliance) Backblaze 与 CloudFlare 之间的流量直接免费,也就是每天 无限量 下行流量,配上 CloudFlare 超长缓存,每天下载请求无限次免费。

而且这样与我用 COS 的速度是差不多的,那我何必用付费的 COS 呢?

注册:

B2 云存储 注册,可以用 Google 快捷登录:

注册之后可能会要求你绑定手机号,乖乖的绑定自己的中国手机号吧【可能会产生短信费用,大概 0.1¥】,不要想什么歪门邪道
,毕竟很多公开的手机号是不能用的,而且 GoogleVoice 也被拒绝了。

新建一个桶,设置为公开:

上传一个文件,点击右边的信息按钮,我们要在这里获取一些信息:

看到那个友好链接吗,这就是 CloudFlare 加速的链接,但这个不是我们想要的链接,我们要自定义域名,毕竟默认的加速相当蛋疼。

自定义域名

这一步需要你有个域名,开个子域给图床:

由于我是 bnxb 接入的 CloudFlare,所以我首先要去 cdn.bnxb.com ,将 assets.cyfan.top 指向 f000.backblazeb2.com 【每个人都可能不一样,自己看情况】,并开启 CDN,然后在 DNSPOD 里 CNAME 负载均衡一下,这里就不放图了。

缩短链接

默认即使绑定域名后,链接大概是这样滴:

https://assets.cyfan.top/file/CYF-PicBed/pic/postpic/2020-07-09%20102255.jpg

可以看到, 中间多了 /file/CYF-PicBed/ , 这并不是我所需要的, 所以我们要把它变成这样:

https://img.cyfan.top/pic/postpic/2020-07-09%20102255.jpg

你要知道,我有一大堆图片都是直接以 https://img.cyfan.top 存在底下的,NotePad++ 可以批量改,但是我在外链也放了很多啊. 所以只能改域名。

前往 CloudFlare, 设置页面规则, 进行 301 转发:

其中 $1 是 CloudFlare 的匹配符号,此规则意思是将所有的 https://img.cyfan.top/* 跳转向 https://assets.cyfan.top/file/CYF-PicBed/*

cdn.bnxb.com ,将 img.cyfan.top 指向 任意一 ip, 比如 1.0.0.1 并开启 CDN,然后在 DNSPOD 里 CNAME。

此后, 所有访问图片都会在里头跳转一下, 外面基本看不出来有什么差别.

开启 CORS| 加长缓存时间

就这样结束了么?没有,你会发现访问的链接里所有的资源都是 MISS,这是因为 Backblaze 默认不缓存

所以,自己设置呗!

点击桶,进入桶设定:

里头写上:

{"cache-control":"max-age=43200000"}

这个意思是强制缓存 43200000 , 大约是 50 天. 然而这里注意一下,时间太长有个问题,你修改一张图片,外面可以能要 50 天才能更改,这样只能通过手动清除缓存做到了。

点击 CORS 设置, 选择:

与所有 HTTPS 来源共享此存储桶中的所有内容。

即可.

实测

免费额度基本用不完.

可惜 PicGo 没有支持 Backblaze,我只能通过网页端上传

然而有一件事情非常蛋疼,你丫的根目录上传的时候是不会创建文件夹的,一次上传会把文件夹里的图片全部上传到根目录。所以,我只能手动创建文件夹,这个痛苦我真的是,

嗯,用了一个晚上,感觉还是挺香的,鹅厂的 COS 收费确实不合理,也要学学外面人家收费啊!


溜了溜了,作业还没写完呢


 目录