
做SEO运维这么多年,我们碰到过不少客户来问:百度抓取诊断工具测出来显示“其他错误”,既不是403也不是502,完全不知道从哪下手查。
这个报错确实挺让人头疼的,百度没有给出具体的错误码和原因,只笼统归为其他错误,新手很容易摸不着头脑。但其实翻来覆去也就那几类原因,按顺序一步步排查,基本都能找到问题。
先搞清楚,“其他错误”到底是什么意思
简单说,就是百度蜘蛛发起抓取请求后,没有拿到正常的HTTP状态码,也不是常见的4xx、5xx错误,而是请求在某个环节直接中断了,系统没法归类到已知错误类型里,就统一显示“其他错误”。
换句话说,蜘蛛连页面的HTTP状态码都没收到,连接在半路上就断了。所以排查方向不用纠结页面内容本身,重点看网络链路、服务器配置、安全拦截这几块。
最常见的几个原因,按概率从高到低排
1.服务器防火墙/安全组拦截了百度蜘蛛IP
这是出现概率最高的原因,尤其是刚换了服务器、装了防火墙插件的站点,最容易出这个问题。
很多服务器为了防攻击,会设置IP访问频率限制,或者直接拦截异常IP段。百度蜘蛛抓取频率高的时候,很容易被防火墙判定为攻击,直接拉黑IP。蜘蛛连服务器都连不上,自然返回不了状态码,就显示其他错误。
还有一些云服务器的安全组规则,或者CDN的WAF防护,也容易误拦蜘蛛IP。我们上个月处理的三个同类问题,有两个都是服务器上的安全插件把百度蜘蛛给拦了。
2.SSL证书配置有问题
如果站点是HTTPS协议,证书配置不规范也很容易出现其他错误。比如证书过期、证书链不完整、服务器端开启了过旧的加密协议,或者只配置了域名不带www的证书,带www的没配。
普通浏览器访问可能因为有缓存、或者自动补全证书链,看着是正常的,但百度蜘蛛的校验规则更严格,证书有一点问题就会握手失败,直接中断连接,返回其他错误。
这种情况用在线的SSL检测工具一测就能看出来,哪里有问题一目了然。
3.页面体积过大,抓取超时
很多人容易忽略这个点,尤其是首页堆了很多大图、视频、或者加载了大量第三方脚本的站点,页面体积动不动就好几兆。
百度蜘蛛抓取有超时限制,也有单页面大小的上限,如果页面加载太慢,或者体积超过了蜘蛛的抓取阈值,抓取到一半就会中断,最后就显示其他错误。
尤其是移动端抓取,对页面大小和加载速度的要求更严格,很多站PC端抓取正常,移动端报其他错误,基本都是这个原因。
4.域名解析不稳定或节点异常
域名解析有问题,或者本地DNS缓存异常,也会导致蜘蛛解析不到正确的IP,连接失败。
尤其是刚换了服务器、刚改了解析的站点,各地DNS更新进度不一样,百度蜘蛛的DNS节点可能还没同步到新地址,就会出现抓取失败。
还有一些用了智能解析的站点,如果蜘蛛IP被分配到了异常的线路节点,也会出现连接不上的情况。
5.服务器网络波动或带宽跑满
服务器带宽被占满、CPU负载过高、内存不足,导致服务器响应不过来,蜘蛛的请求直接被丢弃,也会显示其他错误。
这种一般不是持续性的,时好时坏,有时候测正常,有时候测又报错。高峰期带宽不够用的站点,很容易出现这种间歇性抓取错误。
怎么一步步排查?按这个顺序来效率最高
不用瞎猜,按照从易到难的顺序排查,大部分情况前两步就能找到问题。
第一步,先测页面本身能不能正常访问。
先用自己的浏览器开无痕模式访问一下,看能不能正常打开,再用在线的网站状态检测工具,选几个不同地区的节点测一遍,看返回的状态码是不是200。
如果连普通用户都访问不了,那先解决服务器和源站的问题,不用查蜘蛛的事。
第二步,检查SSL证书状态。
HTTPS站点优先测证书,找个在线SSL检测工具,输入域名跑一遍,看证书有没有过期、证书链完不完整、支持的加密协议对不对。有问题就重新部署证书,把证书链补全。
很多宝塔面板一键申请的证书,有时候会出现证书链不全的情况,浏览器能正常访问,但蜘蛛就是抓不了,这个坑很多人踩过。
第三步,检查服务器安全拦截。
去服务器的防火墙、安全组、WAF插件里看一下拦截日志,有没有百度蜘蛛的IP被拉黑的记录。最稳妥的做法是,把百度官方公布的蜘蛛IP段全部加到白名单里,从根源上避免误拦。
如果用了CDN和云防护,也要去对应后台看一下拦截记录,临时关一下防护再测抓取,看看是不是防护层的问题。
第四步,检查页面大小和加载速度。
用浏览器开发者工具看一下页面总大小、加载时间,首页尽量控制在2M以内,图片该压缩的压缩,没用的第三方脚本该删的删。尤其是移动端,尽量精简,不要加载太多没用的特效和资源。
也可以直接在抓取诊断里看返回的内容长度,如果长度为0或者特别短,大概率就是加载到一半中断了。
第五步,检查解析和服务器状态。
ping一下域名,看解析是不是正确,有没有丢包严重的情况。再登服务器看一下CPU、内存、带宽的占用情况,是不是高峰期资源不够用。
如果是刚改完解析,不用急,等24到48小时DNS完全同步之后再测,大多会自己恢复。
几个实用的小建议
第一,不要只测一次就下定论。抓取错误有时候是偶发的,多测几次,PC端和移动端都测一测,再结合后台的抓取异常统计一起看,判断会更准确。
第二,修复完之后不要反复提交抓取。改完配置之后,在抓取诊断里重新测试一两次确认正常就行,不用反复刷,等蜘蛛自然重新抓取就好。
第三,不要一看到其他错误就觉得是百度的问题。绝大多数情况都是站点自身配置的问题,先从自己这边查起,效率会高很多。
我们平时帮客户做站点运维,这类抓取问题碰得特别多,看起来挺吓人,好像收录要出大问题,其实大多都是配置上的小疏忽。找到原因改过来,一两天抓取就恢复正常了,对收录不会有太大的长期影响。
做站点运营本来就是各种细节堆出来的,碰到问题不用慌,按逻辑一步步排查,总能找到解决办法。
下一篇:域名被标记高风险怎么申诉?