当前位置:首页 > 运维笔记 > 正文

网站抓取诊断socket读写错误原因分析及解决方案

我们在新建一个网站时,要做各种测试,我们认为,最不应该忘记的是做网站抓取诊断,到百度搜索资源平台,输入地址,点击测试即可,可以测试网站是否可以被搜索引擎正确抓取。  

但毕竟是测试,并不一定每一次抓取都会成功,偶尔也会失败,比如我们测试时,出现socket读写错误,那么,网站抓取诊断socket读写错误怎么解决的?本文黑猫站长就来为大家做个详细介绍。

网站抓取诊断socket读写错误原因分析及解决方案

根据对百度站长工具的研究,我们认为:  

一、socket读写错误是什么意思? 

首先我们应该搞明白,socket读写错误是什么意思,才可以继续分析、解决问题,官方的解释为:当百度spider访问服务器,进行tcp通信的时候,socket读写发生异常,导致数据不能正常返回。请检查服务器连接状况和防火墙设置是否符合预期。

看到官方解释,我们应该明白是服务器的链接出现了问题,百度蜘蛛无法正确抓取,所以我们应该着重对服务器的网络配置方面进行排查。

二、socket读写错误如何解决?

1.关闭防火墙

官方解释中已经提到了检测服务器防火墙,我们肯定首先要做这个问题的排查,如果我们不知道要如何设置防火墙,我们建议,你可以直接关闭防火墙,再进行抓取诊断,测试是否是防火墙设置出现了问题,如果确定是防火墙的问题,我们再一步步进行功能关闭、开启测试,要注意,不论关闭哪些功能,80端口和443端口需要正常打开。

2.关闭安全软件

还有时,我们的服务器安装了诸如安全狗这样的网站安全软件,虽然这些软件是为了维护服务器网络安全,但这些安全软件也有很高的权限,很容易因为设置不当或冲突而导致网站抓取测试错误,我们依然可以将安全软件关闭,进行测试,如果感觉麻烦,可以参考安全狗软件来进行功能关闭,点击网络防火墙、关闭DDOS防火墙、ARP防火墙、CC防火墙进行测试。

3.关闭宝塔cc防御

如果你的网站使用了宝塔配置环境,你可以查看宝塔面板是否开启了CC攻击功能,关闭就可以了,原因是宝塔面板开启了CC攻击功能,但攻击频率设置的过低,当出现CC攻击或访问频繁,就触发了防火墙保护,导致抓取失败。

4.强制https

如果以上方法都没有效果,我们需要思考是否是HTTPS设置出现了问题,因为我们在宝塔面板中将强制https开关打开,导致我们网站实际是http而搜索引擎抓取却被强制为https,当然会出现抓取失败,我们只需要关闭该按钮就可以了。

5.修复宝塔面板

近来宝塔面板的版本更新较为频繁,有的时候很多同学因为随手升级了宝塔面板的版本导致网站抓取诊断出现socket错误,这时可以选择修复宝塔面板功能,黑猫站长亲测本方法顺利解决了网站抓取诊断socket错误问题,小伙伴们可以试一下。

总结:网站抓取诊断socket读写错误怎么解决的问题,我们就讨论到这里,以上内容,仅供参考。

有话要说...