之前记录过把博客的图床从七牛迁移到了腾讯云对象存储,刚开始用觉得花费不算很贵,一个月不超过 10 元。直到有一次发了一篇关于机械键盘的文章,放了两张没有经过压缩的图片,由于访问人数稍微过大,几天时间就消耗了将近 40 元的流量费用。当时也在 V2ex 发了帖子,有人建议套个 CDN,因为 CDN 的流量相对于对象存储的流量更便宜,由于当时对 CDN 怎么使用不了解,以为还要自己再买一个域名,所以就没有深入了解下去。最近,趁着有时间,研究了一下博客的图床怎么使用 CDN,才发现原来设置很简单,也不需要购买域名。本文主要分享腾讯云对象存储开启 CDN 的方法。

CDN 基本概念

源站:简单理解,源站可以理解为最初的站点,由于这个站点的资源(图像,html,视频等)访问不方便,所以我们可以借助 CDN 来加速访问,减轻或者杜绝对源站的直接访问。相当 CDN 的节点把源站的资料拷贝到自己的硬盘上,当有用户请求某个数据的时候,CDN 的节点会把自己拷贝的数据传给用户。

回源:当源站的资料有更新,或者通过 CDN 节点缓存中不存在客户端请求的某个资料,CDN 的节点会向源站请求更新的数据或者新的资料,这个过程就叫回源。CDN 可以设置回源时间,如果源站内容更新频繁,回源频率可以高一些,保证资料和源站一致,否则,回源的频率可以降低。

回源鉴权:当 CDN 节点把源站的资料拷贝到本地时,源站需要鉴定这些节点是否有从自己这里拷贝资料的适当权限,如果有权限,才可以拷贝资料。

腾讯云存储开启 CDN

首先,找到自己存放图片的云存储的存储痛,点击进去,然后点击「域名管理」,会出现域名管理的页面。由于我不想自己申请域名,所以我们可以选择设置「默认加速域名」一项。「默认加速域名」意思就是使用腾讯云的 CDN 提供的默认域名访问自己的存储桶里面的图片。

如果是第一次使用腾讯云的 CDN 服务,需要到 CDN 的控制台进行注册,注册以后,就会得到加速域名,下面的「源站域名」就是之前访问我们建立的图床存储桶时使用的域名,这两个域名比较类似,只是把中间的代表存储桶区域的字符换成了 file,其余部分完全相同。在写博客引用图片的时候,应该使用新的加速域名来访问图片,如果一个图片之前的完整 URL 是:

https://blog-resource-1257868508.cos.ap-hongkong.myqcloud.com/test.jpg

那么新的访问 URL 变成了:

https://blog-resource-1257868508.file.myqcloud.com/test.jpg

「加速地域」现在还不能选择,只能是「国内加速」,国内加速的含义是通过 CDN 节点来访问图片时,这些节点使用的服务器都是在国内,不论访问某一张博客图片的人位于国内还是国外。在这里,「源站」指的就是作为图床的这个存储桶,因为 CDN 的图片最初其实都是来自于这个存储桶,或者当我们通过 CDN 提供的域名访问某个图片访问不到时,CDN 也会向这个源站请求图片。「源站类型」不用更改,选择「默认源站」设置即可。

如果存储桶设置的是共有读,那么下面的「回源鉴权」和 「CDN鉴权」不需要开启,否则建议开启「回源鉴权」。

保存这些配置以后,就会看到加速域名正在部署,过几分钟就会部署完毕。此时,加入腾讯云 CDN 的域名管理页面,可以看到已经添加了加速域名:

References