常见问题:ECJia到家:到家配置CDN优化网站速度

来自ECJiaWiki
跳转至: 导航搜索

CDN简单介绍

CDN是什么?

CDN的全称是Content Delivery Network,即内容分发网络。它是建立并覆盖在承载网之上、由分布在不同区域的边缘节点服务器群共同组成的分布式网络,替代以Web Server为中心的传统数据传输模式。CDN的工作原理就是将您源站的资源缓存到各地的边缘节点服务器(CDN节点)上,用户请求访问和获取资源时,就近调用CDN节点上缓存的资源。这种分布式数据传输方式,使得用户请求的资源不需要都回您的源站获取,从而避免网络拥塞、分担源站压力,保证用户访问资源的速度和体验。

通俗点讲:其目的是使用户可就近取得所需内容,解决 Internet 网络拥挤的状况,提高用户访问网站的响应速度。CDN网络可以将服务器的内容缓存到分布全球的CDN节点,根据用户的访问IP,就近连接CDN,提高网站响应速度。


CDN 的使用场景

站点或应用中大量 静态资源 的加速分发。建议将站点内容进行动静分离,静态内容使用阿里云CDN加速。动态内容可以使用云服务器ECS,静态资源如各类型图片、css、js小文件等,建议结合 对象存储OSS 使用。可以有效加速内容加载速度,轻松搞定网站图片、短视频等内容分发。

通俗点讲:比如说,是北京的用户,我们让他访问北京的节点,深圳的用户,我们让他访问深圳的节点。通过就近访问,加速用户对网站的访问。解决Internet网络拥堵状况,提高用户访问网络的响应速度。


使用 CDN 有什么好处?
  1. 提升用户体验,提高收益
  2. 加速网站的访问,提高访问速度
  3. 实现跨运营商、跨地域的全网覆盖
  4. 保障你的网站安全
  5. 节约成本投入
  6. 减轻源站压力


注意事项

  • CDN的加速域名准入标准
  1. 帐号需在阿里云官网完成帐号实名认证。
  2. 加速的域名必须在工信部完成备案。
  3. 加速域名的源站内容,可选择保存于ECS或OSS;如源站内容不在阿里云,接入需经过人工审核。


阿里云 CDN 配置

http 站点

Step1:开通 CDN 服务

在阿里云官网CDN产品详情页快速了解产品,之后单击【立即开通】。在购买页面选择适合计费方式,确认订单,CDN服务即开通。
  • 开通 CDN
到家配置CDN优化网站速度01.png


  • 选择适合自己的计费方式,一般为购买 CDN 流量包,网站前期流量不大的话 500G 即可。
到家配置CDN优化网站速度02.png

Step2:添加加速域名

登录 CDN控制台 ,选择域名管理,这个页面可以查看您添加的所有加速域名和状态。点击【添加域名】
到家配置CDN优化网站速度03.png
  • 点击添加域名后,输入相关信息:加速域名填写你的网站域名,业务类型选择【图片小文件】,源站类型选择【IP】,端口选择【80】
到家配置CDN优化网站速度04.png
  • 添加完毕后,等待审核
到家配置CDN优化网站速度05.png
  • 审核通过后如下图,复制图中的 CNAME 值,后续会用到
到家配置CDN优化网站速度06.png


Step3:配置 CNAME

前往你的 域名解析(DNS)服务商(如万网、阿里云解析、DNSPod、新网、腾讯云解析、route 53、godaddy等),添加该CNAME记录。现以万网/阿里云解析为例,点击前往,选择你的域名,点击【解析设置】
到家配置CDN优化网站速度14.png
  • 点击右上角添加解析
到家配置CDN优化网站速度15.png
  • 记录类型选择【CNAME】,记录值填写刚刚在 CDN 管理控制台复制的 CNAME 值,例如:all.xxxx.com.w.kunlunar.com ,点击确定
到家配置CDN优化网站速度16.png



Step4:CDN 生效

验证CNAME配置是否生效:配置CNAME后,不同的DNS服务商CNAME配置生效的时间也不同。您可以ping您所添加的加速域名,如果被转向*.*kunlun*.com,即表示CNAME配置已经生效,CDN功能也已生效:
 ping www.xxx.com
到家配置CDN优化网站速度17.png


https 站点

Step1:开通 CDN 服务

在阿里云官网CDN产品详情页快速了解产品,之后单击【立即开通】。在购买页面选择适合计费方式,确认订单,CDN服务即开通。
  • 开通 CDN
到家配置CDN优化网站速度01.png


  • 选择适合自己的计费方式,一般为购买 CDN 流量包,网站前期流量不大的话 500G 即可。
到家配置CDN优化网站速度02.png

Step2:添加加速域名

登录 CDN控制台 ,选择域名管理,这个页面可以查看您添加的所有加速域名和状态。点击【添加域名】
到家配置CDN优化网站速度03.png
  • 点击添加域名后,输入相关信息:加速域名填写你的网站域名,业务类型选择【图片小文件】,源站类型选择【IP】,端口选择【443】
到家配置CDN优化网站速度18.png
  • 添加完毕后,等待审核
到家配置CDN优化网站速度19.png
  • 审核通过后如下图,复制图中的 CNAME 值,后续会用到
到家配置CDN优化网站速度06.png



Step3:配置 CNAME

前往你的 域名解析(DNS)服务商(如万网、阿里云解析、DNSPod、新网、腾讯云解析、route 53、godaddy等),添加该CNAME记录。现以万网/阿里云解析为例,点击前往,选择你的域名,点击【解析设置】
到家配置CDN优化网站速度14.png


  • 点击右上角添加解析
到家配置CDN优化网站速度15.png
  • 记录类型选择【CNAME】,记录值填写刚刚在 CDN 管理控制台复制的 CNAME 值,例如:all.xxxx.com.w.kunlunar.com ,点击确定
到家配置CDN优化网站速度16.png



Step4:CDN 生效

验证CNAME配置是否生效:配置CNAME后,不同的DNS服务商CNAME配置生效的时间也不同。您可以ping您所添加的加速域名,如果被转向*.*kunlun*.com,即表示CNAME配置已经生效,CDN功能也已生效:
 ping www.xxx.com
到家配置CDN优化网站速度17.png


Step5:HTTPS设置

开启“HTTPS安全加速”功能的加速域名,须要上传证书,包含证书/私钥,均为 PEM 格式(注:CDN采用的Tengine服务是基于Nginx的,因此只支持Nginx能读取的证书,即PEM格式),可以 使用已有的证书 或 联系销售购买HTTPS证书
到家配置CDN优化网站速度08.png
  • 证书格式转换,下载好适用于 nginx 的证书文件,包含证书/私钥(.crt为证书,.key为私钥)。
到家配置CDN优化网站速度21.png
  • 使用NotePad++或者EditPlus等专业编辑器打开证书与私钥文件,复制对应内容到图中:.crt证书里面的内容复制到公钥中,.key私钥里面的内容复制到私钥中,跳转类型选择 HTTP -> HTTPS
到家配置CDN优化网站速度13.png


缓存设置

缓存过期时间

  • CDN域名概览页 - 选择域名进入管理页面 —【缓存配置】-【缓存过期时间】。
到家配置CDN优化网站速度22.png
  • 目录缓存
/content/uploads
30 天
95
到家配置CDN优化网站速度23.png
  • 文件后缀名缓存
jpg,png,jpeg,gif,css,html,js
30 天
95
到家配置CDN优化网站速度24.png


404页面设置

  • CDN域名概览页 - 选择域名进入管理页面 —【缓存配置】。
到家配置CDN优化网站速度25.png
  • 点击【添加】,选择 404,勾选【选择公益404页面】
到家配置CDN优化网站速度26.png


性能优化

页面优化、智能压缩

  • CDN域名概览页 - 选择域名进入管理页面 —【性能优化】。
到家配置CDN优化网站速度27.png
到家配置CDN优化网站速度28.png


刷新 CDN 缓存

URL 刷新

到家配置CDN优化网站速度29.png

目录刷新

到家配置CDN优化网站速度30.png

名词解释

CNAME记录(CNAME record)

CNAME即别名( Canonical Name );可以用来把一个域名解析到另一个域名,当 DNS 系统在查询 CNAME 左面的名称的时候,都会转向 CNAME 右面的名称再进行查询,一直追踪到最后的 PTR 或 A 名称,成功查询后才会做出回应,否则失败。例如,你有一台服务器上存放了很多资料,你使用docs.example.com去访问这些资源,但又希望通过documents.example.com也能访问到这些资源,那么你就可以在您的DNS解析服务商添加一条CNAME记录,将documents.example.com指向docs.example.com,添加该条CNAME记录后,所有访问documents.example.com的请求都会被转到docs.example.com,获得相同的内容。

CNAME域名

接入CDN时,在阿里云控制台添加完加速域名后,您会得到一个阿里云CDN给您分配的CNAME域名,(该CNAME域名一定是*.*kunlun*.com), 您需要在您的DNS解析服务商添加CNAME记录,将自己的加速域名指向这个*.*kunlun*.com的CNAME域名,这样该域名所有的请求才会都将转向阿里云CDN的节点,达到加速效果。

DNS

DNS即Domain Name System,是域名解析服务的意思。它在互联网的作用是:把域名转换成为网络可以识别的ip地址。人们习惯记忆域名,但机器间互相只认IP地址,域名与IP地址之间是一一对应的,它们之间的转换工作称为域名解析,域名解析需要由专门的域名解析服务器来完成,整个过程是自动进行的。比如:上网时输入的www.baidu.com会自动转换成为220.181.112.143。

常见的DNS解析服务商有:阿里云解析,万网解析,DNSPod,新网解析,Route53(AWS),Dyn,Cloudflare等。

边缘节点

本文档中,边缘节点、CDN节点、Cache节点、缓存节点、加速节点、阿里云节点等都是指阿里云边缘节点。边缘节点是相对于网络的复杂结构而提出的一个概念,指距离最终用户接入具有较少的中间环节的网络节点,对最终接入用户有较好的响应能力和连接速度。其作用是将访问量较大的网页内容和对象保存在服务器前端的专用Cache设备上,以此来提高网站访问的速度和质量。

回源host

回源host:回源host决定回源请求访问到源站上的具体某个站点。

例子1:源站是域名源站为www.a.com,回源host为www.b.com,那么实际回源是请求到www.a.com解析到的IP,对应的主机上的站点www.b.com

例子2:源站是IP源站为1.1.1.1, 回源host为www.b.com,那么实际回源的是1.1.1.1对应的主机上的站点www.b.com

协议回源

指回源时使用的协议和客户端访问资源时的协议保持一致,即如果客户端使用 HTTPS 方式请求资源,当CDN节点上未缓存该资源时,节点会使用相同的 HTTPS 方式回源获取资源;同理如果客户端使用 HTTP 协议的请求,CDN节点回源时也使用HTTP协议。

过滤参数

过滤参数是指当URL请求中带?并携带参数请求到CDN节点的时候,CDN节点在收到该请求后是否将该带参数的请求URL请求回源站。如果开启过滤参数的话,该请求到CDN节点后会截取到没有参数的URL向源站请求。并且CDN节点仅保留一份副本。如果关闭该功能,则每个不同的URL都缓存不同的副本在CDN的节点上.

使用示例

例如:http://www.abc.com/a.jpg?x=1请求URL到CDN节点;开启“过滤参数”功能后CDN节点向源站发起请求 http://www.abc.com/a.jpg (忽略参数x=1)待源站响应该请求内容后,响应到达CDN节点后,CDN节点会保留一份副本;然后继续向终端响应 http://www.abc.com/a.jpg 的内容。

所有类似的请求 http://www.abc.com/a.jpg?参数 均响应CDN副本 http://www.abc.com/a.jpg 的内容。关闭“过滤参数”功能则每个不同的URL都缓存不同的副本在CDN的节点上。

例如:http://www.abc.com/a.jpg?x=1 和 http://www.abc.com/a.jpg?x=2 会响应不同参数源站的响应内容。