【蜘蛛优化】禁止百度蜘蛛爬取服务器 php禁止Baiduspider访问指定目录

来源:PHP禁止蜘蛛 浏览:3039次 时间:2020-07-01
做网站找雨过天晴工作室
问题描述:
由于百度蜘蛛的大量抓取,导致服务器性能下降,最后宕机;而它抓取的还是一些不重要的业务




解决办法:
从入口文件中禁止,如果是百度的抓取就让它直接返回,不让它进入程序中消耗服务器资源
主要用到的得到user-agent百度的为“Mozilla/5.0 (compatible; Baiduspider/2.0; +http://www.baidu.com/search/spider.html)”




php程序段
list(,$controller,$function) =  explode('/', $_SERVER['SCRIPT_URL']);
//禁止百度蜘蛛抓取tl 和cl目录
$user_agent = $_SERVER['HTTP_USER_AGENT'];
if($user_agent == 'Mozilla/5.0 (compatible; Baiduspider/2.0; +http://www.baidu.com/search/spider.html)' && preg_match('/^(tl*)|^(cl*)/',$controller)) {
die('不需要抓取');
}




另外从apache中直接禁掉所有蜘蛛的抓取可以用以下配置




BrowserMatch "Spider" bad_bot
————————————————
版权声明:本文为CSDN博主「残月9217」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/u011771214/article/details/68067678