学习永不停止
我们一起努力吧!

WP Super Cache扩展功能:禁止wordpress无用爬虫和防止采集

阳江鼎阳抄数设计交流群

通过HTTP_USER_AGENT可以获取一个用户的访问意图。举一个简单的例子,网站有付费内容时,一般的用户访问时显示“非VIP会员”查看不了,但google、baidu的爬虫却可以正常访问,这就是利用user-agent的判断技术,如果是搜索引擎的爬虫,就把内容显示出来,否则的话,只显示给付费用户。不过让人遗憾的是,除去那些正常的访问行为,剩下的也只有恶意了,比如内容采集、无用爬虫、攻击入侵,每天的网站维护无时无刻都在危险的笼罩中,正是存在着这种复杂性,所以我们更应该防范于未然。禁止恶意的HTTP_USER_AGENT访问就显得非常重要了!

对于wordpress网站,禁止USER_AGENT有专门的代码,比如这种:

//防恶意HTTP_USER_AGENT
$ua = $_SERVER['HTTP_USER_AGENT'];
$now_ua = array('FeedDemon','BOT/0.1 (BOT for JCE)','CrawlDaddy','Java','Jullo','Feedly','UniversalFeedParser','ApacheBench','YandexBot','AhrefsBot','YisouSpider','jikeSpider','MJ12bot','ZmEu phpmyadmin','WinHttp','EasouSpider','HttpClient','Microsoft URL Control','YYSpider','jaunty wordpress','oBot','Python-urllib','Indy Library','FlightDeckReports Bot','ZmEu','Swiftbot','jaunty'); //将恶意USER_AGENT存入数组
if(!$ua) { //禁止空USER_AGENT,dedecms等主流采集程序都是空USER_AGENT,部分sql注入工具也是空USER_AGENT
header("Content-type: text/html; charset=utf-8");
wp_die('请勿采集本站,骂人的话就不说了!');
}else{
    foreach($now_ua as $value )
    if(eregi($value,$ua)) {
    header("Content-type: text/html; charset=utf-8");
    wp_die('请勿采集本站,骂人的话就不说了!');
    }
}

上述代码放入wordpress主题文件夹的functios.php里面即可生效,大家可根据实际需要在$now_ua里面的数据组增减HTTP_USER_AGENT标识,比如恶意采集软件类的有:FeedDemon,ZmEu,Indy Library,oBot,jaunty几种。一般公布出来的恶意User Agent请见以下列表:

FeedDemon 内容采集
BOT/0.1 (BOT for JCE) sql注入
CrawlDaddy sql注入
Java 内容采集
Jullo 内容采集
Feedly 内容采集
UniversalFeedParser 内容采集
ApacheBench cc攻击器
Swiftbot 爬虫
YandexBot 爬虫
AhrefsBot 爬虫
YisouSpider 爬虫
jikeSpider 爬虫
MJ12bot 爬虫
ZmEu phpmyadmin漏洞扫描
WinHttp 采集cc攻击
EasouSpider 爬虫
HttpClient tcp攻击
Microsoft URL Control 扫描
YYSpider 爬虫
jaunty wordpress爆破扫描器
oBot 爬虫
Python-urllib 内容采集
Indy Library 扫描
FlightDeckReports Bot 爬虫

写到这里,可能有朋友说,不是写“WP Super Cache”的吗?呵呵,差点忘记了!现在就来聊一下!

很多朋友使用WP Super Cache也仅仅是为了进行七牛云存储CDN加速,但却忽略了“高级”组中的“已拒绝的用户代理(User Agent)”列表。还记得防止使用七牛云存储被搜索引擎被当成镜像站处罚所采用的1/4个措施吗?不错,在“已拒绝的用户代理(User Agent)”列表中加入“qiniu-imgstg-spider”就能解决了这个难题。想想,这不正是利用了HTTP_USER_AGENT屏蔽“qiniu-imgstg-spider”抓取爬虫吗?所以,当我们正准备往functions加入代码或在后台安装插件时,其实可以暂停一下,先将“user-agent”加入到WP Super Cache里面吧,不喜欢哪个就往里面加,大家自由发挥就是了!至于效果嘛,测试下就知道了!

未经允许不得转载:http://jdks100.com/风语守望_博客 » WP Super Cache扩展功能:禁止wordpress无用爬虫和防止采集


分享到:更多 ()
关注“公众平台”:     学习交流QQ群(185619299):

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
  • 3 + 7 = ?

风语守望_博客,共同学习,一起成长!

网站首页联系我们
防复制