php禁止网页抓取(盗版网站禁止ip没有生效还要排查日志保险起见,)
优采云 发布时间: 2022-01-11 20:05php禁止网页抓取(盗版网站禁止ip没有生效还要排查日志保险起见,)
NO.1
禁止的ip不生效
昨天放出的文章还是被盗版网站抓拍
所以昨天文章的7个方法,操作的方法都没有生效,至少对于爬虫来说没有,因为如果对方使用动态ip池,是不可能禁止爬取的
NO.2
禁用用户代理
使用插件禁用User Agent显然是无效的,要详细查看日志。
为了保险起见,在博客的代码中禁止爬虫是最直接的方式
二是Nginx/Apache/PHP等服务器配置
NO.3
index.php
在wordpress中插入以下代码
//获取UA信息
$ua = $_SERVER['HTTP_USER_AGENT'];
//将恶意USER_AGENT存入数组
$now_ua = array('FeedDemon ','BOT\/0.1 (BOT for JCE)','CrawlDaddy ','Java','Feedly','UniversalFeedParser','ApacheBench','Swiftbot','ZmEu','Indy Library','oBot','jaunty','YandexBot','AhrefsBot','MJ12bot','WinHttp','EasouSpider','HttpClient','Microsoft URL Control','YYSpider','jaunty','Python-urllib','lightDeckReports Bot');
//禁止空USER_AGENT,dedecms等主流采集程序都是空USER_AGENT,部分sql注入工具也是空USER_AGENT
if(!$ua) {
header("Content-type: text/html; charset=utf-8");
die('请勿采集本站,因为采集的站长木有小JJ!');
}else{
foreach($now_ua as $value ){
if(preg_match("/{$value}/",$ua)>0) {
header("Content-type: text/html; charset=utf-8");
die('请勿采集本站,因为采集的站长木有小JJ!');
}
};
};
NO.4
反爬队
N中的方法设置为禁止爬取,否则被爬取