一、CDN加速OSS存储
CDN本质就是一个分布式缓存系统,既然是缓存,那必须要有数据源,这就是为什么
我们在使用CDN时,必须为其指定一个数据源的原因。
具体来说CDN的数据源可以是
1、你的网站
2、CDN厂商指定的它可以访问的存储设备,比如阿里云CDN指定其可以访问的存储设备是OSS
我们在配置使用CDN时,一定需要为其指定数据源
二、为何配置CDN需要添加域名
CDN的用法我们后续会详细介绍,此处我们单以我们的方案为背景展开介绍。
复述一下我们的方案背景
1、我们申请的专门用于访问cdn的域名egonlinhaifeng.cn,注意这个域名并不是我们网站的域名,而是专门用于访问cdn的域名
2、CDN的数据源设置为OSS存储,我们网站的静态文件已经推到OSS中了
3、我们部署了一套集群,用户流量最先抵达的是我们的集群,然后由我们集群的nginx做分发,动态数据转发后集群内的web层服务器,静态数据例如1.jpg,直接返回给访问者一个地址:http://egonlinhafifeng.cn/static/img/1.jpg
这个地址里的域名就是我们之前购买注册的专门用于访问cdn的域名
下图展示了吗,用户在拿到http://egonlinhafifeng.cn/static/img/1.jpg地址后的大概流程
详细访问顺序如下(包括请求到了cdn之后发生的事情)
egonlinhafifeng.cn—–》通过cname解析为cdn服务的域名(我们配置完毕cdn加速oss存储后会看到这个域名,你需要把egonlinhaifeng.cn CNAME解析到这个cdn域名)——–》cdn服务的域名解析为cdn调度器的ip地址—–》调度器计算得出一台离用户最近的cdn服务器——》用户访问该cdn服务器,命中则访问结束,未命中,则cdn回源同类cdn,都找不到,最终会回源到源数据即oss存储
三、配置CDN加速OSS存储
3.0 步骤概述
开通OSS到上传资源文件的事情,我们已经做过了,接下来做开通CDN的步骤
3.1 域名ICP备案
我们申请的专用于访问CDN的域名为egonlinhaifeng.cn,要想用于cdn加速,必须进行ICP备案
一开始你不备案,往下面的步骤走的过程中也会要求你备案
备案过程见:
https://egonlin.com/?p=8966
3.2 进入CDN控制台
控制台—》搜索CDN—》点击进入CDN控制台
3.3、点击添加域名
3.4、配置让cdn加速的域名
配置加速域名为:egonlinhaifeng.cn,该域名不需要绑定任何ip地址,该域名是用来专门访问cdn服务的域名,后续会为其添加CNAME解析到cdn的域名
3.5 需要验证域名的归属
找到你的dns解析:控制台—》搜域名—》点击进入域名控制台—-》找到你的域名–》添加解析
记录类型:TXT
主机记录:verification
记录值:verify_64ffa5fd6b7302ee35cdf2f07bb82ecb
添加完毕后,回到cdn控制台,点击验证,即可
3.6、业务类型
选择:图片小文件
3.7、资源分组
默认资源组
3.8、点击:新建源站信息,把CDN的数据指向OSS
3.9、勾选霸王条款,点击下一步
3.10、提示信息说明
必须添加CNAME解析才能让cdn加速oss生效,没办法,甲鱼的臀部,龟腚
3.11、点击查看需要把egonlinhaifeng.cn通过CNAME解析到的cdn域名是:"egonlinhaifeng.cn.w.kunlunaq.com"
3.12、控制台-》云解析DNS—》添加CNAME解析
解析生效需要一段时间,你可以在cmd中nslookup egonlinhaifeng.cn测试下能解析到egonlinhaifeng.cn.w.kunlunaq.com代表ok
3.13、解析ok后,去到CDN控制台,查看CNAME状态正常
此时点击cdn添加的域名进入查看,下面红框的字消失,证明cdn加速oss生效
你可以直接在浏览器里访问了
3.14 官网文档
https://help.aliyun.com/zh/cdn/use-cases/accelerate-the-retrieval-of-resources-from-an-oss-bucket-in-the-alibaba-cloud-cdn-console
其他文章:https://egonlin.com/?p=8846(该文章建议不看,仅仅是一种思路提供,年代很久远了)