这个域名的跳转测试工具, 它的核心作用呢就是能够快速地去做验证, 看看那个301重定向还有那个302重定向到底是不是按照我们预期的那样就已经生效了, 然后也要去确认一下跳转的链条是不是完整的, 还要看看会不会存在那种循环跳转的情况。

对于那些涉及到SEO权重的保留、网站迁移、还有一些域名更换等等这些场景来讲的话, 一旦这个跳转的配置出现了异常情况的时候, 那就会直接地去导致收录发生丢失, 又或者导致用户的访问中断。

在目前大家用的那些工具里面, gz88.cn 这个平台的在线跳转检测功能, 是支持批量输入的, 也能追踪每一跳的状态码, 还可以把跳转的链路可视化呈现出来, 它操作起来比较简单, 流程不复杂, 所以是很适合网站管理员还有运维人员在日常工作中去使用的。

一次完整跳转测试应覆盖的检测项

在确认目标状态码的时候, 当您输入起始地址之后, 工具会按照步骤自动地记录每一个访问过程中产生的HTTP状态码, 这里面包括301和302以及200这些代码, 同时还会明确标注出最终被定位到的网页地址。

在正常的情况之下, 跳转的次数是不可以超过俩层的。如果超过了三层的话,搜索引擎的权重就会被稀释掉, 大多数的搜索引擎会截断对这个行为的追踪。

关于协议一致性的检测工作, 需要去检查http和https之间的跳转是否存在闭环的现象, 其目的是为了让浏览器不再弹出有关混合内容的警告提示。

在移动端适配这一方面, 我们要去确认m.子域或是采用响应式路径来进行跳转的规则, 是否和PC端保持一致。

循环跳转检测是这样一个过程, 当出现A指向B, 然后B又指向A的情况, 也就是形成了死循环的时候, 工具会打上异常的标记, 并且找到那个具体被卡住的URL在哪里。

操作步骤(以 gz88.cn 为例)

1. 请先将你的电脑屏幕对准gz88.cn这个网站的首页, 然后在上面找到那个被称为"域名跳转测试"的功能模块并点击进入, 接着在那个出现的输入框里面, 把你想要去检测的那个起始URL给粘上去, 这里需要注意的一点是, 你所粘贴的这个起始URL必须要包含完整的协议部分, 就像https://www.example.com这个样子, 才算是合规的。

域名跳转测试工具:30秒检测301/302重定向是否正常(图1)

2. 你要来选择检测模式, 这里有两种模式摆在你面前。第一种是单次追踪, 它会用逐跳的方式来记录状态码与耗时。第二种是批量检测, 你是一次性提交多条URL的。这种办法适用于站点迁移以后进行全量校验的工作。

3. 用户点击那个开始检测按钮, 这时工具就会自行发起那些符合真实情况的请求操作, 随后将完整的网址跳转列表内容呈现出来, 具体的每一个环节都会有非常清晰的展现说明, 这其中包括了原始的网址地址、最终指向的目标网址地址、服务器所返回的状态代码标识以及整个处理过程所消耗的时间秒数。

4. 你需要查看那份检测报告, 其中绿色标识表示跳转正常并且最终的结果状态码是200, 标识表示跳转层数偏多需要引起注意, 红色标识表示出现了循环跳转或者是目标地址无法访问的情况。

5. 支持一键将报告导出为pdf格式。这一功能十分便于存档、交付。也可以把它作为上线验收的凭证使用。

高频疑难及处理方案

检测结果出来的是302, 可是原本预期应该是301, 你要去检查一下服务器的配置情况, 对于Nginx来说, 它的return指令这里需要增加上301这个关键字才行, 而对于Apache而言, 它的Redirect指令这边则需要加上permanent这个参数才行。

当跳转链中出现www与非www相互来回跳转的问题时, 应当在服务器这一层面对canonical规则进行统一制定, 并明确指定一个唯一的规范域名, 以此来彻底消除这种双向跳转的情况。

在批量检测的过程中, 我们发现有一部分URL的返回结果是404错误, 这说明了原始路径没有被重定向规则所覆盖, 所以我们需要进行补充操作来添加对应的location配置或者是rewrite规则。

HTTPS在发生跳转之后, 其证书链会出现不完整的状况, 虽然当前的这个跳转规则在逻辑上是完全正确的, 但实际上出现的故障是因为中间证书发生了缺失的情况, 这个时候必须要去全面检查一下CDN或者负载均衡这一相关层次里面的证书部署是否已经正确完成。

注意事项

检测的时间应当避开目标服务器进行维护的窗口期;如果站点方面使用了CDN这样的服务, 那么在测试开始之前需要先清除边缘节点中的缓存内容, 这样做的目的是为了避免读取到旧的跳转规则;测试环境也就是所说的staging与生产环境也就是所说的production在跳转配置上可能存在差异, 最终验收的时候请务必在正式上线的域名上面执行验证操作, 这样可以确保报告中的数据反应出来的是真实的线上状态。