爬虫 Bingbot
分析
服务器日志如下 :
40.77.167.60 - - [03/Mar/2025:13:41:36 +0800] "GET /cgi-bin/oui_lookup?mac=pokemon+yelow HTTP/1.1" 404 208 "-" "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; bingbot/2.0; +http://www.bing.com/bingbot.htm) Chrome/116.0.1938.76 Safari/537.36"
40.77.167.60 - - [03/Mar/2025:13:41:36 +0800] "GET /cgi-bin/oui_lookup?mac=pokemon+yelow HTTP/1.1" 404 208 "-" "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; bingbot/2.0; +http://www.bing.com/bingbot.htm) Chrome/116.0.1938.76 Safari/537.36"
20.15.133.174 - - [03/Mar/2025:13:41:38 +0800] "GET /cgi-bin/oui_lookup?mac=BT10+english HTTP/1.1" 404 208 "-" "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; bingbot/2.0; +http://www.bing.com/bingbot.htm) Chrome/116.0.1938.76 Safari/537.36"
20.15.133.174 - - [03/Mar/2025:13:41:38 +0800] "GET /cgi-bin/oui_lookup?mac=BT10+english HTTP/1.1" 404 208 "-" "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; bingbot/2.0; +http://www.bing.com/bingbot.htm) Chrome/116.0.1938.76 Safari/537.36"
从提供的日志片段中,我们可以看到以下关键信息:
1. 日志分析
- IP地址:
40.77.167.60
20.15.133.174
- User-Agent:
Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; bingbot/2.0; +http://www.bing.com/bingbot.htm) Chrome/116.0.1938.76 Safari/537.36
- 这表明这些请求来自 Bingbot,即微软Bing搜索引擎的爬虫。
- 请求路径:
/cgi-bin/oui_lookup?mac=pokemon+yelow
/cgi-bin/oui_lookup?mac=BT10+english
- 响应状态码:
404
(未找到),表明请求的资源不存在。
- 请求频率:
- 短时间内有多个请求,表明Bingbot在尝试抓取这些URL。
2. 爬虫信息
- 爬虫名称: Bingbot
- 爬虫类型: 搜索引擎爬虫(微软Bing)
- 爬虫目的: 抓取网页内容以更新Bing搜索引擎的索引。
- 行为特点:
- 根据Bing的官方声明,Bingbot会遵循
robots.txt
规则。 - 如果页面返回404错误,Bingbot会在一段时间后重新尝试抓取,直到确认页面已失效。
- 根据Bing的官方声明,Bingbot会遵循
3. 爬虫历史
- 访问路径:
- Bingbot尝试访问
/cgi-bin/oui_lookup
路径下的资源,但这些资源返回了404错误。 - 可能是由于这些URL曾经存在并被索引,或者有其他页面链接到了这些URL。
- Bingbot尝试访问
- 访问频率:
- 短时间内多次访问,表明Bingbot在尝试抓取这些URL以确认其状态。
4. 如何屏蔽爬虫
如果你希望屏蔽Bingbot或其他爬虫,可以通过以下几种方式实现:
4.1 通过 robots.txt
文件限制
屏蔽Bingbot:
User-agent: bingbot Disallow: /
这将禁止Bingbot抓取你网站的任何页面。屏蔽特定路径:
User-agent: bingbot Disallow: /cgi-bin/
这将禁止Bingbot抓取/cgi-bin/
路径下的所有内容。
4.2 通过防火墙屏蔽
使用iptables屏蔽IP地址:
bash iptables -A INPUT -s 40.77.167.60 -j DROP iptables -A INPUT -s 20.15.133.174 -j DROP
5. 总结
- 当前日志显示Bingbot正在尝试抓取无效的URL,导致404错误。
- 可以通过修复URL、设置重定向、更新
robots.txt
或返回410状态码来解决这一问题。 - 如果不需要Bingbot抓取你的网站,可以通过服务器配置或Bing Webmaster Tools屏蔽它。
通过以上措施,可以有效减少无效请求,提升网站的健康状态和搜索引擎友好性。