------------------------------------------------------------------------
!!!以下配置方法(简单易通)
通过恶意的User-Agent关键词来屏蔽访问,包含漏洞扫描,无用蜘蛛,采集爬虫,cc攻击,sq注入等。
(本文由求句子网 wwW.qIujuZi.com整理发布)
Nginx
修改配置文件,内容:
#禁止Scrapy等工具的抓取
if ($http_user_agent ~* (Scrapy|Curl|HttpClient)) {
return 403;
}
#禁止指定UA
if ($http_user_agent ~* "User-Agent关键词|User-Agent关键词")
{
return 403;
}
#禁止非GET|HEAD|POST方式的抓取
if ($request_method !~ ^(GET|HEAD|POST)$) {
return 403;
}
Apache
修改配置文件,内容:
DocumentRoot /home/wwwroot/xxx
<Directory "/home/wwwroot/xxx">
SetEnvIfNoCase User-Agent ".*(User-Agent关键词|User-Agent关键词)" BADBOT
Order allow,deny
Allow from all
deny from env=BADBOT
</Directory>
PHP
项目入口文件或者启动文件中,设置内容:
//获取UA信息
$ua = $_SERVER['HTTP_USER_AGENT'];
//将恶意USER_AGENT关键词存入数组
$now_ua = [USER_AGENT关键词];
//禁止空USER_AGENT,dedecms等主流采集程序都是空USER_AGENT,部分sql注入工具也是空USER_AGENT
//判断是否是数组中存在的UA
if (!$ua || in_array($ua, $now_ua)) {
die('页面错误,请稍后重试!!!');
}
声明:本站所收录作品、热点评论、图片等信息部分来源互联网,目的只是为了系统归纳学习和传递资讯。内容不代表本网站的观点和立场。请读者仅作参考,并请自行核实相关内容。本站所有图文由于未联系到知识产权人或未发现有关知识产权的登记,所有作品版权归原创作者所有,根据《信息网络传播权保护条例》,如不慎侵犯了你的权益,请联系我们告知,我们将做删除处理!