从AI爬虫日志里翻出2012年的老坑:图片防盗链把抓取卡死在403
这几天翻服务器日志,专门看几个AI爬虫的请求记录,越看越眼熟。当年做SEO的时候,百度蜘蛛抓图片被防盗链挡住,返回403,图片索引全掉,我折腾了一下午改nginx规则才放行。这两天在日志里又看见一模一样的事:AI爬虫来抓产品图,先请求HTML,然后跟着img的src去拉图,结果被防盗链规则拒了,连续403之后,这个爬虫对整站的抓取频率明显降了。
具体场景是这样:我们图床用了CDN,防盗链白名单只放了自家域名和几个搜索引擎的UA。AI爬虫的UA不在名单里,Referer又对不上,直接被踢。日志里能看到它先抓了一个详情页,接着请求三张主图,全部403,之后半小时内只零星来了几条请求,明显是降速了。
我做了个对照:把一批页面里的图片链接改成指向一个不带防盗链的公共图床,只改了这一处,其他不动,同样跑三天。结果带防盗链的那批,AI爬虫抓完HTML基本就不往下走了;换成公共图床的那批,抓取深度明显多一层,图片URL的请求成功率从三成多提到九成以上。
判断依据也简单:爬虫不是人,它不会“看到”版权提示就绕道,它只看HTTP状态码。403在它眼里就是“此路不通”,试几次不通就降低你这块的权重。当年百度蜘蛛是这样,现在AI爬虫还是这样,换了名字,底层逻辑一点没变。
我的处理办法很土:
- 先在CDN防盗链白名单里把主流AI爬虫的UA和IP段放行,但只放图片,别放整站。
- 图床单独开一个子域,专门给爬虫读,不做Referer校验,只限速。
- 改完盯一周日志,看图片请求的成功率和抓取深度有没有回来。
这事的教训是,GEO也好AI搜索也好,先别急着谈什么结构化数据、语义优化,把爬虫能不能顺利拿到你的资源这一关过了再说。当年robots.txt写错一个Disallow,整站不收录,我吃过一次亏记了十几年。现在AI爬虫的坑,还是那批老坑换了个马甲。
想问下各位:你们有没有在日志里专门盯过AI爬虫拉图片、拉JS的请求成功率?还是只看它抓没抓HTML就完事了?
