域名跳转测试工具, 它是一种在线的检测工具, 它是专门为验证网站重定向配置是否正确而设计的, 它主要针对的是301、302、307、308这些状态码。它能够通过模拟真正的HTTP请求, 去完整追踪从你输入域名开始, 一直到最终落地页这一过程中的每一级跳转情况。
这样做能够帮助站长和开发者, 快速定位一些跳转死循环的问题, 还有一些多级冗余跳转的问题, 以及状态码错误的这些问题。它是在域名迁移的过程和SEO配置的环节中, 一种必备的排查手段。
核心检测能力
工具通常覆盖的方面包括以下的这些检测项。
进行301永久重定向验证的操作, 需要确认旧域名是否规范地指向了新域名, 并且检查权重是否在传递过程中保持完整。
关于302临时跳转的情况, 需要进行排查, 也就是要识别这种临时跳转会不会导致搜索引擎会反复地对其进行抓取, 又或者会导致权重出现分散的问题。
全链路追踪功能是这样的, 它会逐级地去记录每一跳所对应的HTTP状态码以及响应耗时, 还要记录Server返回的响应头。
死循环检测会自动识别从系统A跳转到系统B, 接着又从系统B跳回到系统A这种循环跳转的现象, 并且会将这种情况标记为异常情况。
协议跳转验证, 也就是在HTTP与HTTPS之间进行强制的重定向, 还要看看HSTS策略是否已经生效了, 这种情况需要进行检查。
批量域名检测是这么回事, 就是你可以一次提交好多条URL, 然后系统会输出一个对比报告出来给你看。
标准操作步骤
1. 请把完整的网址输入到检测框里面去, 这个动作一定要认真对待, 确保必须要把协议的开头部分给带上了, 就像https://yourdomain.com这样的写法。
2. 选择检测模式, “跟随全部跳转”是用来查看完整链路的,“仅检测首跳”则是用来快速确认第一级状态码的。
3. 您可以设置User-Agent, 模拟地区, 是否启用缓存忽略等参数。
4. 当用户发出检测请求之后, 那个工具会在很短的时间之内, 大概也就是几秒的时间里, 给出每一个步骤的追踪信息, 这些信息里面包含有状态号码、最后跳转到的那个网址的地址、以及完成整个任务所花费的全部时间。
5. 根据报告来进行判断的话, 如果直接单跳301就抵达了200状态码, 这种情况被认定为是最优的;但如果出现了两次以上的跳转过程, 或者返回的是404或者500这样的状态码, 那就被认定为是异常的情况。
实际案例
我们以gname.xin作为例子来讲, 当域名gname.xin被配置成301跳转方式, 最终指向目标地址www.gname.xin的时候, 用户如果在测试工具里面输入https://gname.xin这个网址的话, 返回的具体结果如下所示。
第一步, 域名是
进行到了第二个跳跃步骤, 也就是访问 www.gname.xin 这个网站地址, 然后收到了代码为200的反应, 这说明最后的结果是已经成功到达目标位置。
只有一跳301, 而且状态码是正确的, 跳转链路是符合规定的。要是检测的时候出现了从301到302再到200的这种多级跳转, 这就说明服务器端存在着冗余的规则, 应该把这些规则合并成单跳的301。
高频问题与对应方案
在跳转到新的页面的时候, 如果出现了404的情况。大家要去检查一下那个目标的路径是不是真的存在。还要看一下Url的末尾是不是不小心把斜杠给漏掉了。
如果你发现跳转的情况出现了超过3次以上, 那么就需要进行清理操作, 把Nginx/Apache里面的那些冗余rewrite规则去除掉, 最后再合并成单次跳转。
如果HTTPS跳转的结果是失败的, 或者出现了证书告警这种情况的话, 那么我们需要去确认一下这个SSL证书是不是已经覆盖到了那个用来进行跳转的目标域名, 并且这个情况也得看一下它有没有同时包含www这个前缀在里头。
在手机那个设备上和在电脑那个设备上, 跳转过去之后的结果对不上。要去排查一下, 是不是在里面配了一种东西, 这种东西就是专门看访问的那个设备它是什么样子, 然后根据这个样子的不同来确定要不要进行跳转的逻辑。
旧的域名已经被搜索引擎收录了旧的URL。我们要在服务器端统一返回301状态码。同时, 我们要提交site map更新。
选型要点
在挑选跳转测试工具的时候, 应该把重点放在这几个方面, 也就是这个工具能不能支持大批量的输入数据, 数量至少要有五十条以上, 有没有功能可以把报告导出成CSV格式或者PDF格式, 能不能去自定义网络协议和用户代理信息, 还有显不显示响应时间里的延迟情况。
对于一些要操心着几十个域名的运维团队来说, 用批量检测的办法来操作, 效率要比一条条手动去验证高得多, 更重要的是, 最后生成的那些报告, 可以直接拿过来当作上线验收的记录保存起来。


