对于高权重的域名来说, 如果要把它们接入到CDN里面的话, 那么就需要有一个核心的原则是域名要保持不变, 然后再去进行CNAME切换的操作, 最后一定要确保证书能够覆盖完整的范围。
只要你按照这三条主要的原则去去做事情的话, 那么你的CDN部署就不会对搜索引擎怎么去判定你这个域名的权重有任何的影响。下面我会从那些实际操作层面的角度给你一个非常完整的建议内容出来。
一、接入的方式是进行CNAME切换, 不可以直接去修改A记录。
搜索引擎在对域名所有权的真实性进行判定之际, 所主要依赖的数据依据, 是包括域名的注册详情信息以及DNS的记录结构在内的综合信息。
那些权重比较高并且在过往多年里已经积累了较多外部链接与搜索收录情况的域名实例(譬如gname.xin这样的域名), 如果在配置上发生了改变, 即将原本对应的A记录值直接修改指向CDN服务的节点IP地址, 那么在这种情况下, 部分负责抓取网页的搜索引擎机器人程序可能会产生误判行为, 认为该域名的归属权已经发生了变更, 从而导致其触发重新对网站内容进行抓取的操作以及启动对相关页面权重等级的再评估流程。
所谓的正确的处理办法是这样的。
1. 你去那些搞CDN服务的公司, 用他们的后台管理系统, 把你要加速的那个网域名给添加上去, 然后从他们那边拿到一个CNAME的值, 这个值长得很像那样子的, 比如xxx.edgecdn.net这个样子。
2. 你需要到那个原来的, 就是你现在用的那个DNS服务商的平台上面去, 把那个域名的A记录给改掉, 把这个A记录替换成一条CNAME记录, 然后这一条新记录的地址, 你得填上CDN分配给你的那个CNAME值。
3. 把子域名像www.gname.xin这样的, 单独设置成一个CNAME记录。这个CNAME记录的值要指向那个同样的加速域名。
在这整个过程里面, 域名注册时候的那个信息没有改, 负责注册的那家公司没变, 负责弄解析的那个服务方也没换, 所以搜索引擎这边就当成是同一个域的主体在处理这事儿。
二、TLS证书:必须覆盖全部加速域名
一般情况下, 高权重的域名会同时开启主域名和使用带有www前缀的子域名, 并且有时候还可能会挂载上多个其他的子域名。关于证书的配置规则如下。
那个主证书里面的SAN字段这个内容, 它必须要把那个主域名给包括进去, 而且还得把那些所有需要用加速功能的子域名也都得涵盖到。
建议首选使用那些能够由CDN服务商所提供的通配符类型的证书, 这种证书的示例就是*.gname.xin。假如上述情况做不到或者不存在这个选项的话, 那就只得去购买一个包含了所有需要的域名的OV类型证书, 以此来作为替代方案。
证书的有效的日期需要结合自动续期的这套机制, 在CDN的后台设置里面完成配置操作,以此来避免因为在证书过期之后出现了相关的告警问题, 从而导致搜索引擎在执行抓取任务的时候会中断这一情况发生。
三、这个回源协议以及这个IP地址白名单。
回源协议建议设置为使用HTTPS的方式来进行回源, 以避免明文回源的情况发生, 从而防止中间节点进行嗅探。
在源站防火墙配置当中, 你需要把CDN回源的IP地址设置为白名单。通过这样的设置, 系统会仅允许由CDN节点发起的回源请求。与此同时, 系统将阻断那些非来自CDN渠道的访问连接。这一举措能够有效降低源站遭遇CC攻击的风险。
回源的Host字段是您必须填写的内容, 这里需要用到原始的域名, 具体的例子像是gname.xin这样的形式, 而绝对不能去填写IP地址或者字符“-”, 一旦这样做了的话, 那么您的源站那边就无法针对虚拟主机所发送过来的请求给出正确的回应了。
四、缓存与TTL策略
对于静态资源, 也就是图片、JS代码以及CSS样式表, 在CDN边缘节点上的缓存时间TTL建议设置在24小时到72小时之间。而在源站那边设置的HTTP响应头中, 应当指定Cache-Control为public, 并且max-age的值为259200。
我们对于动态页面来说, 需要把CDN缓存的这个TTL设置为0呀, 或者说设置得非常短, 比方说是5秒到30秒之间, 这样做是确保搜索引擎的爬虫, 它能够获取到最新的页面内容。
关于DNS的TTL这个参数, 在接入CDN之前的这1天到2天的时间段内, 务必要把域名的TTL时间值下调到300秒这个数值, 这样做的主要目的是为了能够有效降低在CNAME切换操作完成之后, 全球范围内生效所带来的延迟现象。
五、部署后验证清单
在部署工作做完以后, 要按照如下所列的步骤, 一项接着一项地进行检查, 具体的顺序如下。
1. 我们在多个区域进行了拨测工作, 这些区域包括了国内的三大运营商以及海外地区, 通过这个步骤确认了所有的节点都返回了HTTP的200状态码, 并且没有发生重定向循环的情况。
2. 要去检查那个响应头里面的, 像X-Edge-Cache-Lookup这些字段, 还有Server这个字段也要看一眼, 最终的目的就是要确认一下流量是否真的是经过了CDN的处理。
3. 在搜索引擎的平台上提交那个名叫sitemap的文件, 然后去盯着看抓取的日志信息, 最后要证实一下搜索爬虫所使用的IP地址能够顺利地拿到页面里的内容;另外呢, 有些个别的搜索引擎它们会直接就跑去请求源站那边的一个IP地址去做什么真实性的检查, 这时候你就必须得去保证源站这个服务器并没有被整个儿地完全关掉。
4. 在24到48个小时之后, 你需要去查看一下搜索引擎后台里面记录的抓取频率以及索引量的情况, 要是你发现有异常的下降出现的话, 就要立刻来进行排查工作, 看看是不是因为配置了错误证书或者是回源配置的问题导致的。
在高权重域名经过CDN加速之后, 其本身所具有的域名权重水平、针对搜索引擎优化的具体表现情况, 以及用户在访问时所得到的速度体验, 这些方面都可以同时保持在一个稳定的状态。
在这样的情况下, 是绝对不会出现因为排名因素而被搜索引擎降低权重的现象的, 也不会发生由网络原因导致的访问流量出现异常波动的情况。


