由于百度蜘蛛的大量抓取,导致服务器性能下降,最后宕机;而它抓取的还是一些不重要的业务
解决办法:
从入口文件中禁止,如果是百度的抓取就让它直接返回,不让它进入程序中消耗服务器资源
主要用到的得到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
版权与免责声明:
凡注明稿件来源的内容均为转载稿或由网友用户注册发布,本网转载出于传递更多信息的目的;如转载稿涉及版权问题,请作者联系我们,同时对于用户评论等信息,本网并不意味着赞同其观点或证实其内容的真实性;