背景
一年前我写过《使用 CloudFlare/百度云加速做免费SSL》,里面提到了:因为 Chrome 的最新安全限制, https 站点无法正常加载 http 的图片和其他静态资源,这使得我不得不给我的图床加上 SSL。
前几天发现我的博客里的图片无法被正常加载,观察控制台后发现 图床的 SSL 证书出问题了。到百度云加速控制台看,才发现上次申请的一年 SSL 证书已经到期了,并且需要付费才能继续申请证书。好吧,白嫖的快乐没有了。
那就不用百度云加速了,SSL CDN 也用七牛云的吧。
七牛云
免费套餐
从 2016 年白嫖七牛云存储至今,本文就当做给七牛打回广告吧。
先说结论:
- 如果你只用 http 访问文件,每个月不超过 10G 流量的话,那么用七牛云相当于白嫖,一分钱都不用花
- 如果需要使用 https 则需要花费一些费用(0.28 元/GB),一般博客小站,每个月最多不超过 1 块钱吧。等过段时间,我有了一定数据再回来更新这个数值。
对于个人用户来说,有 10G 的免费存储,每个月 10G 的流量已经非常足够了。具体的资费可以参看 官网价格 。PS. 从价格表会看到 外网流出流量 会被收费,这点不用担心,我专门查了下官方说明:
如果使用了七牛测试域名或者融合 CDN 域名访问资源,是不会计算外网流出流量的
也就是说,你绑定一个域名回源到七牛云的对象存储,每个月不超过 10G 则不收费。
创建一个 bucket
在七牛云对象存储 管理后台,创建一个bucket:
存储区域选国内的都行;访问控制设置为公开,毕竟我们要将其用作图床
绑定域名
创建成功后,会提示你绑定一个域名。该域名将作为 CDN 域名,通过该域名访问你的文件时,会尝试在 CDN 节点找缓存;缓存未命中再回源到你上边创建的 bucket。
我们添加一个域名,该域名必须是经过备案的。
通信协议:如果你不需要 HTTPS,那么选择 HTTP 就足够了
配置 SSL 证书
如果我们期望使用 HTTPS 访问文件,那么需要将通信协议设置为 HTTPS 。页面会引导我们跳到 证书管理页面。
七牛云允许我们 购买证书
或者 上传自有证书
。但我发现,购买证书这个 tab 里边包含免费证书。所以我选择了它。
接下来点击创建订单后,会引导我们跳到证书信息补充页面.
- 域名: 填写你期望绑定的 cdn 域名,例如我上边的
file.foamzou.com
。 - 证书备注名:随便填
- 域名所有权验证方式:我选的 DNS 验证
- 公司和联系人信息:都是必填,由于我没有公司,就公司信息就瞎填了,没有关系的。但个人信息最好填自己的,或者真实格式的,否则可能无法通过。
最后点提交,会提示补齐信息成功。接下来需要我们配置 DNS 解析以证明该域名是我们的。
我们到自己的域名管理后台新增一个 TXT 解析即可:
过几分钟后,点击 检测验证结果
的按钮,通过就 ok
配置 CDN 域名解析
不管选择的是 HTTP 还是 HTTPS 都要完成这步操作。将我们的域名做个 CNAME 解析到七牛云的服务器域名。
访问七牛 CDN 域名管理页面,选择你的域名。点击进去可以看到七牛的 CNAME 域名
到我们域名的管理后台,新增一条 CNAME 记录,解析到该域名
至此,所有配置都完成了。
使用图床
在管理后台上传文件
在七牛云管理后台,打开你的 bucket 页面。从 overview 可以看到该桶的一些统计数据。
点击 文件管理
,可以直接上传文件到桶,然后你就可以用域名访问啦。但每次都通过这种途径上传文件,是很麻烦的。
Alfred 插件上传文件
我个人的习惯是:截图,上传到图床,将图床链接插入到博客使用。
为了方便将其自动化,我两年前写过一个 Alfred 插件,可以通过以下两种途径上传文件:
- 截图后,用户触发组合键,上传到七牛云
- 选中文件(支持多个文件),用户触发组合键,上传到七牛云
但有时截图的体积比较大,所以昨天稍微有点空,加上了压缩的功能:本地压缩之后再上传。
有需要的朋友可以用用。
其他上传方式
官方应该有提供方便的 GUI 工具。各种博客应该也有提供一些插件来帮助用户自动上传文件到桶,例如 WordPress 的 WP-QINIU 插件。
我也用的七牛,10块钱用一年,好多年了,哈哈!
10块一年,这么稳。
锋哥,博客发的频率降低了
github repo 写得比较多了。改日发发😂