工作原理
假设您的源站域名为 **www.a.com**。接入 CDN 开始使用加速服务后,当您的终端用户(北京)发起 HTTP 请求时,实际的处理流程如下:
图片:
- 终端用户(北京)向 www.a.com 下的某资源发起请求,会先向 LDNS 发起域名解析请求。
- 当 LDNS 解析 www.a.com 时,会发现已经配置了 CNAME www.a.tbcdn.com。
- 解析请求会发送至阿里云 DNS 调度系统,并为请求分配最佳节点 IP。
- LDNS 获取 DNS 返回的解析 IP。
- 用户获取解析 IP。
- 用户向获取的 IP 发起对该资源的访问请求。
- 若该 IP 对应的节点已经缓存了该资源,则会将数据直接返回给用户(如图中步骤 7、8),此时请求结束。
- 若该节点未缓存该资源,则节点会向业务源站发起对该资源的请求。获取资源后,结合用户自定义配置的缓存策略(可参考产品文档中的
缓存过期配置),将资源缓存至节点(如图:北京节点),并返回给用户,此时请求结束。
相关概念
CNAME:即别名 (Canonical Name),可以用来把一个域名解析到另一个域名。
回源 HOST:使用回源 HOST,您可以自定义 CDN 节点回源时所需访问的具体服务器域名。
协议回源 :开启该功能后,回源使用协议和客户端访问资源的协议保持一致。
过滤参数:URL 请求中,如果携带“?”(半角)和参数,则请求到 CDN 节点时,CDN 节点在收到该请求后是否将该带参数的请求 URL 请求回源站。
常用操作
- 常用配置
**
- 基本配置
开通 cdn 服务
添加加速域名
配置 CNAME
CDN 生效
**
- 列表项目
- 回源配置 源站设置 域名或 IP
- 回源 HOST
以选择三种域名类型:加速域名、源站域名或自定义域名。
- 回源 HOST 的默认值为:
如果源站是 IP 类型,回源 HOST 默认为加速域名。
如果源站是 OSS 源站类型,回源 HOST 默认为源站域名。
源站和回源 HOST 的区别:
源站:源站决定了回源时,请求到的具体 IP。
回源 HOST:回源 HOST 决定了回源请求访问到该 IP 上的具体站点。 - 缓存配置
设置缓存规则
目录或文件名 过期时间 权重(1-99)
生效顺序依据权重
http 响应头设置
自定义静态页面 404 403 503 504 等
HTTPS 配置 - 访问控制
防盗链配置规则
IP 黑白名单设置
鉴权??
性能优化
- 页面优化
问题:源站拉来后,处理完,放到 cdn 上?耗时?
静态资源直接放在 cdn 上
智能压缩
问题:Gzip 开关?
阿里云 CDN 支持智能 GZIP 功能,可以通过控制台的“页面优化”功能开启 Gzip 功能 - 过滤参数
开启过滤参数的作用是忽略 URL 请求中 ”?” 之后的参数,提高 CDN 缓存的命中率。
第一次访问*1.jpg,CDN 没有缓存,直接回源访问数据。
开启【过滤参数】
第二次访问1.jpg?test1,由于开启了过滤参数 ”?”,所以 ”?” 后面的参数无需匹配,即可命中 CDN 缓存 1.jpg。
关闭【过滤参数】
第二次访问1.jpg?test1,由于关闭了过滤参数 ”?”,所以 ”?” 后面的参数需精确匹配,即无法响应 CDN 缓存内容1.jpg,需要重新回源拉取*1.jpg?test1。 - 同名更新
首先建议源站的内容不要使用同名更新,以版本号的方式同步。
对于必须做同名更新的文件,可以从控制台、或是 OPEN API 提交刷新请求,每个域名每天限制的次数小于等于 2000 条;支持目录级别的刷新:
- 刷新目录
管理控制台—cdn 管理—刷新缓存 – 选择目录
刷新 URL
管理控制台—cdn 管理—刷新缓存 – 选择 url
URL 预热
可以主动推送文件到 CDN 的 2 级节点上,这样客户端再访问相关 url 时,CDN 的 1 级节点会直接从 CDN 的 2 级节点拉取数据,不需要进行回源获取数据
管理控制台—cdn 管理—刷新缓存—url 预热
开启 Gzip - 故障定位 CDN 访问异常时候, 测试问题出现在 CDN 节点还是本地网络
https://help.aliyun.com/knowl…://help.aliyun.com/knowledge_detail/40212.html?spm=a2c4g.11186631.2.2.5076775cmoeDAv