Backblaze 和 Cloudflare 之间的合作伙伴关系可以将内容存储在 Backblaze 的 B2 存储服务上,并根据需要自动将其馈送到 Cloudflare 的 CDN。本文通过使用 Cloudflare 转换规则处理 Backblaze B2 云存储的图像托管,从而获得一个免费的、快速的、友好 URL 和安全的 10GB 图像托管网站。
Backblaze B2 是一种 IaaS 服务,以合理的价格提供无限的云存储。用户可以免费使用 10 G。Cloudflare 向客户提供基于反向代理的内容分发网络及分布式域名解析服务。
配置 CDN
1.登录 Backblaze B2(可以直接使用 Google 帐号);
2.创建一个公开的存储桶(Bucket)并上传文件;
3.在存储桶设置的桶信息中写入 {"cache-control":"max-age=720000"}
,设置缓存控制时间;
4.通过查看文件详细信息获得文件地址,如;
https://f004.backblazeb2.com/file/<存储桶名称>/<文件夹名称>/<文件名称>
5.登录 Cloudflare;
6.在某域名下(如果没有就注册一个,或者转入一个)进入 SSL/TLS,确保 Cloudflare 以 FULL 模式对源使用 SSL(Backblaze B2 仅支持 HTTPS 连接);
7.在同域名下新建一条 CNAME 解析,创建一个该域名的子域,目标地址 f004.backblazeb2.com
(与文件详细中的文件地址域名相同);
8.在同域名下的 Rules > Page Rules 中配置页面规则以仅允许从您的域中获取您的存储桶;
https://<解析的域名>/file/<存储桶名称>/*
# 设置:缓存级别 - 缓存所有内容
9.同步设置另一条规则,重定向到某个 404 页面;
https://<解析的域名>/file/*/*
# 设置:重定向 URL - 302 服务器
完成后,文件地址可通过以下地址访问:
https://<解析的域名>/file/<存储桶名称>/<文件夹名称>/<文件名称>
隐藏存储名
以上借助 Cloudflare CDN,隐藏了您使用的 Backblaze B2 图床域名,但仍旧暴露存储桶名。
1.进入 Worker > 创建服务,添加一个 Worker;
2.部署以下内容,修改 b2Domain 和 b2Bucket 两个变量:
代码请下载文本文件:b2.txt。
3.添加路由,地址为<解析的域名>/*
,Worker 选择前面添加的 Worker。
4.完成后,文件地址可通过以下地址访问:
https://<解析的域名>/<文件夹名称>/<文件名称>
注意:
1.Backblaze B2 前 10GB 的存储空间是免费的,每天下载的前 1GB 数据是免费的,更多请关注其定价规则;
2.Cloudflare CDN 的许多基础服务是免费的,更多请关注其定价规则;
3.由于具体实现可能有不同的方式,以及发生更改,本文及链接资源不保证是最新可用的,请密切关注官方说明。
测试页面 sayacintamu.com 引用了 Backblaze B2 图床的两张图片,其地址完全按上述实践处理。同时,它基于 Cloudflare Pages 部署,本文最后一节将介绍更多 Cloudflare 的用法。
参考:官方教程将 Backblaze B2 与 Cloudflare CDN 结合使用,图床教程也可同步参考,图片引用源。
上传文件
上传文件到 Backblaze B2 Cloud Storage,您可以使用 B2 的网页界面,最大文件大小为 500 MB;或者一些软件,通过像传统 FTP 一样上传文件。
首先在 B2 后台获得一个 Key ID 和 App Keys(Application Keys),为其他软件的连接提供验证。注意,App Keys只会在创建成功时出现一次。
Cyberduck
Cyberduck 是一款适用于 Mac 和 Windows 的自由服务器和云存储浏览器,支持FTP、SFTP、WebDAV、Amazon S3、OpenStack Swift、Backblaze B2、Microsoft Azure 和 OneDrive、Google Drive和Dropbox。Cyberduck 是 Backblaze B2 集成的第三方服务,因此首先会提到它。
CloudBerry Explorer
CloudBerry Explorer 允许跨本地存储和云存储访问、移动和管理文件,支持Amazon S3、Google Cloud、Microsoft Azure 或其他流行的存储选项。
DropShare
DropShare 支持同步到 Dropshare Cloud 和 23 个自定义云提供商(其实还包含所有符合 S3 API 的服务)。
Cloudflare
Cloudflare 是一间总部位于旧金山的美国跨国IT企业,以向客户提供基于反向代理的内容传递网路(Content Delivery Network, CDN)及分布式域名解析服务(Distributed Domain Name Server)为主要业务。Cloudflare 可以帮助受保护站点抵御包拒绝服务攻击等网络攻击,确保该网站长期在线,同时提升网站的性能、载入速度以改善访客体验。
常有一些小微网站通过 Cloudflare 的动态域名解析和内容分发网络免费服务,对网站进行CDN加速并提高可靠性和安全性。但用户需要将域名的名称服务器(NS))指向 Cloudflare,并且免费的 CDN 的节点都是美国,如果网站的主要用户在国内,访问速度可能不升反降。
Cloudflare Pages
Cloudflare Pages 允许免费部署静态网页,这和 GitHub Pages 类似,但后者似乎更受欢迎。您可以查阅 Cloudflare Pages 和 GitHub Pages 的功能对比、Hacker News 关于 Cloudflare Pages 和 GitHub Pages 的讨论,以及 SaaSHub 跟踪 Reddit、HackerNews 和其他一些平台上的产品推荐和提及。
您可以浏览一个 GitHub Pages 站点的示例,以及一个 Cloudflare Pages 站点的示例。
阿里云 OSS-CDN
在以上方案中,应用了 Backblaze B2 对象存储服务(Object Storage Service,OSS)和 Cloudflare 内容分发网络(Content Delivery Network,CDN),Azure、AWS 也提供雷同服务。
类似的国内服务商也非常多,如阿里云 OSS 和 阿里云 CDN,您安全可以参照本文的流程在阿里云上搭建一个OSS和与之配套的CDN。其他还有腾讯、百度、又拍云、七牛云等,一些服务商可能使用云存储、云加速这样的术语。许多个人网站使用又拍云、七牛云来建立“图床”,因为它们都有好用的免费服务,从而降低了降低了存储和流量费用,这样可以节省 Web 服务器的投入。
👍
楼主残忍的关闭了评论