特定の IP が Web サイトにアクセスできないようにしたい場合は、その IP をブロックすることができます。この方法は以下で提供されます。以下のコードを見てください。
function isCrawler() {
$spiderSite= array(
"TencentTraveler",
"Baiduspider+",
"BaiduGame",
"Googlebot",
"msnbot",
"Sosospider+",
"Sogou web spider",
"ia_archiver",
"Yahoo! Slurp",
"YoudaoBot",
"Yahoo Slurp",
"MSNBot",
"Java (Often spam bot)",
"BaiDuSpider",
"Voila",
"Yandex bot",
"BSpider",
"twiceler",
"Sogou Spider",
"Speedy Spider",
"Google AdSense",
"Heritrix",
"Python-urllib",
"Alexa (IA Archiver)",
"Ask",
"Exabot",
"Custo",
"OutfoxBot/YodaoBot",
"yacy",
"SurveyBot",
"legs",
「lwp-trivial」、
「Nutch」、
「StackRambler」、
「ウェブアーカイブ(IAアーカイバー)」
「Perl ツール」、
「 ECrawler「,
」 WGet tools",
"larbin",
"魚の検索",
);
if(in_array($_SERVER['HTTP_ USER_AGENT']),$spiderSite)){
return true;
}else{
return false ;
}
}
//取客户端 ip
{
if (isset($_SERVER)){
if (isset($_SERVER["HTTP_X_FORWARDED_FOR"])){
$_S ERVER["HTTP_X_FORWARDED_FOR"] ;
} else if (isset($_SERVER["HTTP_CLIENT_IP"])) {
$realip = $_SERVER["HTTP_CLIENT_IP"];
} else {
$ realip = $_SERVER["REMOTE_ADDR"];
}
} else {
if (getenv("HTTP_X_FORWARDED_FOR")){
$realip = getenv("HTTP_X_FORWARDED_FOR");
} else if (getenv("HTTP_CLIENT_IP")) {
$realip = getenv("HTTP_CLIENT_IP");
} else {
$realip = getenv("REMOTE_ADDR");
}
}
return $realip;
}
http://www.bkjia.com/PHPjc/825056.html