使用 CloudFlare 后百度蜘蛛抓取错误,不收录问题原创 |
2022-10-10,时隔两个月后更新:因为CF被太多人用来翻墙,国内的搜索引擎查到网站在CF的IP下就不会继续抓取新内容了。 -------- 🧑⚕️🩰🧻💩💅 好久没有注意到网站的收录情况了,最近几天发现百度最新收录的帖子是5月份的,在这之后就没有收录了。看到这个我的心突然就凉了半截....... ![]() 一、排查问题 👆🎢🥑♏🐖 这段时间网站也没改版,没有出现大范围的网络故障,之前好好的怎么就不收录了呢?用 site 命令查询发现网站还在,排除掉 K 站了,然后去百度站长社区溜达溜达看看其他人有没有和我一样的,其他人都是正常的。(后面两天站长社区维护关闭了,想问点问题都不行) ![]() 然后想是不是百度不能抓取到网站的内容,所以不收录新内容,旧内容正常。用自带的抓取模拟工具抓取一下: 🧑⚕️🧥🧲💩👍 ![]() ![]() 偶尔有抓取成功的,大部分是抓取失败(我一开始怀疑百度在抽风 ![]() 👵🩰🗡🤔👌 我又看了看谷歌和 bing 的收录,这两个是正常的,搜狗和360基本没了。 二、发现问题 一般来说 socket 读写错误 就是百度访问不了抓取的页面,不会有错的。🧑🎤👠🪦🤪🤌 如果自己能正常浏览网站,百度提示这个错误,可能是系统防火墙或者其他 WAF拦截掉了。 三、解决问题 👁🛑🫖🅰🐡我在服务器上是没有针对百度做拦截的,那么问题应该就在 WAF 上了! 在 cloudflare 上查找和爬虫相关的 WAF 规则,发现了这个:合法机器人爬虫 ![]() 👴👠📷🤑💅 那么创建一条规则: ![]() 创建完成后,等个10分钟看看再去抓取诊断,果然都抓取成功了! 👃🗽🧊🆚🐺 ![]() 四、后续 👩✈️💍🧬😉👊 为什么谷歌和 bing 都正常,国内的几个搜索引擎都不能抓取呢? 现在正常抓取后懒得去想了 ![]() 为了预防以后再出现问题,我把百度蜘蛛的 ip 段加入了 cloudflare 的允许访问的规则: 🖕🪐🦞⚛🐠 ![]()
帖子热度 6510 ℃
|
|