内容分发网络 CDN

2022-05-31 11:37:43 浏览数 (1)

接入背景

作为web站点,开启cdn加速对提升用户体验十分重要,能有效减少由于物理地域的距离导致的网络延迟,当然主要是增对静态资源。 另外还可以给我们提升网站的可用性,由于前端每次发布更新后,资源的hash值都会更新, 导致发布正在访问的页面无法拉取已经更新静态资源,从而导致当前页面无响应。

开通原因如下:

  1. 提高web站点的体验(缩短跨地域访问的访问网络延迟)
  2. 提供web站点的可用性。

接入cdn

接入腾讯云cdn配置从零配置cdn

配置步骤配置步骤

我遇到的问题

我们当前的访问路径如下:

client -> WAF(web应用防火墙) -> 内网网关 -> tke(k8s)

其中,实际访问的域名 cname 到 waf 提供的vip域名。

接入CDN后路径如下:

client -> CDN -> WAF(web应用防火墙) -> 内网网关 -> tke(k8s)

变更,域名的cname 到 CDN提供的vip域名,CDN回源配置到原来 waf的vip域名。

注意:

  1. 先配置部署好域名后,再去配置dns 解析到cname,cdn未部署到站点不可用
  2. 如果waf上使用了https证书,需要在cdn上配置先配置好证书
  3. 在cdn的基础配置中,主源站需要配置回源协议,这里需要根据waf是否使用了https证书,使用的话需要配置与waf的证书一致,并选择正确的回源协议。

在接入cdn过程中遇到几个问题

无法通过来源IP来限制访问

配置cdn之前我们的站点有多套环境,不同的环境有不同的对外开放权限,我们通过WAF的访问控制来限制访问,通常有如下几种方式:

  1. 配置来源的IP归属地,限制来源地域访问
  2. 通过配置IP白名单来限制来源

配置cdn后,之前配置的ip规则已经失效了,需要查询域名回源ip, 来给waf 或者cvm iptables 配置ip白名单

泛域名问题

  1. 子域名回源host问题 由于我的站点是泛域名方式进行配置管理,在配置主源站时,配置回源host为 *.domain.cn, 担心到服务端可见的域名不是子域名的,后面经过咨询是支持的,详情可见泛域名配置文章。 主源站配置主源站配置
  2. 特定子域名不走cdn 我们的业务需求某个域名不走cdn,其他的子域名走cdn,这种情况下我们怎么解决呢? 这种情况下可以利用dns解析,dns的解析优先级会先命中子域名dns解析,然后在命中泛域名解析,因此我们可以把特定不走cdn的域名放到dns来解析。
cdn

0 人点赞