本文主要分享腾讯云对象存储开启 CDN 的方法,不需要购买额外的域名。

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

CDN 基本概念

设置 CDN 之前,需要理解几个相关的专业名词。

源站:简单理解,源站可以理解为最初的站点,由于这个站点的资源(图像,html,视频等)访问不方便,所以我们可以借助 CDN 来加速访问,减轻或者杜绝对源站资源的直接访问。相当 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