Squish & Co. — 诊断部
重定向检测
跟踪一个域名把访客送过的每一次重定向,查看每一跳的状态码,发现循环,并弄清明文 HTTP 是否会升级到 HTTPS。Squish 免费提供的工具,无需注册。
试试: , , 无需注册
结果会显示在这里。输入域名即可开始。
链条为什么会在无人察觉时变长
重定向会不断累积。站点先迁到 www,再迁到 HTTPS,之后又改了某个页面的名字——每次变更都是新增一跳而不是替换掉旧的,直到一位输入你域名的访客要经过四个地址才能抵达一个页面。看上去什么都没坏,所以没人去查。但代价是实实在在的:每一跳都是在任何内容渲染之前的一次往返,而跟随长链条的爬虫常常走不到终点。把整条路径一次看完,通常就足以看出哪些跳可以并成一跳。
常见问题
为什么有两条链?
它们回答的是不同的问题。主链从 https 开始,这是现代浏览器首先尝试的。第二条从明文 http 开始,而这是唯一能看出「省略 https 的人是否最终到达安全页面」的办法——一条从加密开始的链条永远显示不了这一点。
什么是重定向循环?
一条把访客送回他们已经经过的地址的链条,因此永远到不了任何地方。浏览器在若干跳之后会放弃并显示错误。通常是两条规则在打架:一条强制加 www,一条去掉 www;或者插件和服务器配置都在做重定向。
为什么某一跳显示是用 GET 读取的?
我们只请求响应头,也就是 HEAD 请求,而有些主机会用 405 拒绝这种方法。照实报告那个状态,描述的是我们的探测而不是页面,所以我们改用 GET 重新请求,并在该跳上注明。
重定向会影响 SEO 吗?
单次永久重定向没问题,也很正常——所有「域名指向 www」的配置都是如此。问题在于长链条:每一跳都要花时间,爬虫最终会放弃。如果超过两跳,中间那些通常可以合并掉。
这类链条几乎总是服务器配置问题,而不是站点内容问题。由 Squish 托管的站点,重定向规则一次配好并持续保持整洁,让任何地址到你站点的路径始终只有一跳。
了解 Squish 主机 →