已用robots.txt拦截GeedoProductSearch,为何仍能看到其访问日志?
你当前的robots.txt配置如下:
# START YOAST BLOCK # --------------------------- User-agent: * Crawl-delay: 100000 Disallow: /wp-admin/ Allow: /wp-admin/admin-ajax.php User-agent: GeedoProductSearch Disallow: / User-agent: Googlebot Crawl-delay: 100 User-agent: Bingbot Crawl-delay: 10000 Disallow: /wp-admin/ Allow: /wp-admin/admin-ajax.php # --------------------------- # END YOAST BLOCK
可能导致GeedoProductSearch仍访问的原因
- 爬虫不遵守robots协议:很多小众或非正规爬虫完全无视robots.txt规则,不会读取文件中的拦截指令,直接发起页面请求,这类情况在非头部爬虫中很常见。
- User-Agent匹配不符:你配置的拦截目标是
GeedoProductSearch,但实际发起访问的Geedo爬虫可能使用了不同的User-Agent字符串,比如Geedo、GeedoBot或者带版本标识的变体。建议查看访问日志里的具体UA字段,确认是否和配置中的值完全一致。 - robots.txt解析异常:检查文件是否存在格式问题,比如特殊字符、非UTF-8编码,或者换行、空格错误导致爬虫无法正确解析规则。虽然按协议特定UA规则优先级高于通配符
*,但部分爬虫的解析逻辑可能存在缺陷,不过这种情况概率较低。 - 缓存未更新:如果之前的robots.txt没有设置对Geedo的拦截,爬虫可能缓存了旧版本的规则,需要等待其缓存周期结束后,才会读取新的配置内容。
内容的提问来源于stack exchange,提问作者kasper
相关产品推荐
相关产品推荐

