时间:2024-02-27 来源:525游
很多站长们都有个普遍的误解那就是使用 CloudFlare 会影响搜索引擎爬虫的正常抓取,这个明月经过实际体验后发现根本不存在这个问题的,先不说 CloudFlare 自己的“合法 Bot”大数据的精准度,单就 CloudFlare 强大的 WAF 规则就不允许这种情况的发生,所以今天明月给大家分享一下 CloudFlare 如何让合法搜索引擎蜘蛛爬虫正常抓取。注意,是合法的,仿冒的或者垃圾爬虫不在这个范围内哦!
首先说明的是 CloudFlare 默认情况下是会对所有来访请求以及频率进行过滤的,如果这期间搜索引擎蜘蛛爬虫来访频繁是会遭到 CloudFlare 的自动拦截过滤的,这也是很多站长们误解的主要因素之一,所以建议大家使用 CloudFlare 后第一时间要创建一个免费的 WAF 来给所有的搜索引擎蜘蛛爬虫放行(CloudFlare 后台——【安全性】——【WAF】里免费版可以创建 5 条 WAF,对于我们普通博客站点来说足够用了),具体如下截图:
这里使用的 WAF 规则首先是放行 CloudFlare 自己判断的合法爬虫(如第一条的“合法机器人爬虫”),另外又加了百度、搜狗、360、神马、头条搜索、谷歌、必应搜索引擎蜘蛛爬虫 IP 的 ASN 号的放行规则。
本 WAF 的表达式如下:
(cf.client.bot) or (ip.geoip.asnum in {4808 55967 4837 137702 15169 59067 8075 3561 4134 9808 23724 37963 4812 18257 17623 4816})
大家可以直接复制粘贴到【编辑表达式】里使用哦!
这样以来上述的来访一律采取“跳过”措施并且包括下面的所有 CloudFlare 规则:
然后保存让此规则生效即可。
等待一会儿后就可以在 CloudFlare 后台【安全性】——【事件】里来观察放行搜索引擎蜘蛛爬虫的记录了,可以借助【事件】里的【添加筛选器】来单独查看来自国内(China)的爬虫,具体如下图所示:
然后点击任意一个记录即可看到是哪个搜索引擎蜘蛛爬虫来访了,如下图所示,百度搜索引擎蜘蛛爬虫正在来访和抓取,CloudFlare 给放行并记录了:
当然,也可以利用【事件】里的【添加筛选器】根据更多条件查看搜索引擎蜘蛛爬虫来访的记录,比如用【用户代理】来查看所有谷歌爬虫等的记录等等,具体大家慢慢研究吧!
本文转自明月登楼的博客 https://www.3520.net/server/2421.html
修订版 (ip.geoip.country in {"CN"} and cf.client.bot and (http.user_agent contains "Google" or http.user_agent contains "Baiduspider" or http.user_agent contains "Sogou" or http.user_agent contains "bingbot" or http.user_agent contains "360Spider" or http.user_agent contains "Bytespider"))