最开始博客使用的是Telegraph-Image图床,简单方便不需要自己的服务器,部署在cloudflare,图片数据存储在Telegraph-Image服务器上,但是后来发现这个不太适合长久的博客使用,更适合一些论坛临时使用,因为后台的图片不是按照上传时间排序,导致每次后台查找图片加入白名单需要来回翻找很费劲,不设置白名单的话又有被人滥用的风险。
自己的需求就是不使用自己的服务器作为存储的对象,经过比对发现Backblaze B2+Cloudflare这种组合感觉还可以,Backblaze B2每天存储额度为10GB,同时Cloudflare与Backblaze之间的流量不计费,用作为图床是完全足够。其他后续有待验证。
创建存储桶
点击Buckets
,设置Backet Unique Name
名称,点击Create a Bucket
,现在创建存储桶需要输入信用卡的信息,1美元的费用,原来免费。
存储桶创建成功后,点击
Upload/Download
上传一张图片,然后查看图片的友好URL地址,需要获取到链接的域名部分做cnmae解析,假设友好URL为:https://f004.backblazeb2.com/file/verytesthje/99a62775b6ca454d646f475eba6d246f.png
,需要的就是f004.backblazeb2.com这个域名
Cloudflare配置
域名解析
类型选择CNAME
,名称随意,目标f004.backblazeb2.com
,点击保存
重写URL
点击规则
->转换规则
,选择重写URL
,输入规则名称,字段选择主机名
,运算符选择等于
,值填入刚才cname的域名,即上文的pic.havg.free.hr,重写到选择Dynamic
,值为concat("/file/桶名", http.request.uri.path)
,点击部署
这样设置完成后,就可以使用
https://pic.havg.free.hr/99a62775b6ca454d646f475eba6d246f.png
来访问了。(把SSL/TLS 加密模式设置为完全严格模式)
PicGo配置
从backblaze官网上传的图片链接没有经过转换,很不方便,但是配合PicGo这个上传工具管理图片就会显得很轻松,
可以直接生成markdown链接,html链接,url链接等,无需登陆官网。
Picgo下载地址:直达
在插件设置
中搜索S3,安装即可
在backblaze创建密钥,点击
Application Keys
,点击Add a New Application Key
,输入Name of Key
,点击Creat New Key
,会出现申请的结果,保存好相关信息,尤其是applicationKey,这个后续不会再显示。图床设置选择
Amazon S3
,设置如下应用密钥ID
:刚才申请的keyID应用密钥
:刚才申请的applicationKey桶名
:最开始创建桶的命名文件路径
:{md5}.{extName}地区
:Endpoint中us-X-00X的这部分内容自定义节点
:https://Endpoint
,Endpoint见下图代理
:不用填自定义域名
:https://pic.havg.free.hr
最下面的按照默认,点击
确定
这样就可以直接从Picgo直接上传图片了。
设置防盗链
由于Backblaze云存储是有每日限额的,免费额度如下
Daily Storage Caps:日常存储容量前10GB免费
Daily Download Bandwidth Caps:日常下载带宽前1GB免费
Daily Class B Transactions Caps:日常B类事务前2500次免费(B类事务包括下载、获取文件)
Daily Class C Transactions Caps:日常C类事务前2500次免费(C类事务包括创建存储桶、列举存储桶、列举文件版本、列举Keys)
防盗链是用于屏蔽其他站点对静态资源引用的常用手段,由于backblaze提供的免费额度有限,设置防盗链可以有效避免被其他网站引用的额度消耗。但是对于恶意盗刷没什么用。