手机
当前位置:查字典教程网 >编程开发 >php教程 >PHP禁止个别IP访问网站
PHP禁止个别IP访问网站
摘要:想不让某个IP访问网站,可以封他的IP,下面就提供这个方法。看下面的代码。复制代码代码如下:functionget_ip_data(){$i...

想不让某个IP访问网站,可以封他的IP,下面就提供这个方法。看下面的代码。

复制代码 代码如下:

function get_ip_data(){

$ip=file_get_contents("http://ip.taobao.com/service/getIpInfo.php?ip=".get_client_ip());

$ip = json_decode($ip);

if($ip->code){

return false;

}

$data = (array) $ip->data;

if($data['region']=='湖北省' && !isCrawler()){

exit('http://www.a.net');

}

}

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",

"The web archive (IA Archiver)",

"Perl tool",

"MJ12bot",

"Netcraft",

"MSIECrawler",

"WGet tools",

"larbin",

"Fish search",

);

if(in_array(strtolower($_SERVER['HTTP_USER_AGENT']),$spiderSite)){

return true;

}else{

return false;

}

}

//取客户端 ip

function get_client_ip()

{

if (isset($_SERVER)){

if (isset($_SERVER["HTTP_X_FORWARDED_FOR"])){

$realip = $_SERVER["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;

}

【PHP禁止个别IP访问网站】相关文章:

PHP中的加密功能

PHP4中实现动态代理

PHP实现文件安全下载

PHP的面向对象编程

PHP个人网站架设连环讲(一)

PHP编程与应用

5.PHP的其他功能

PHP 中的类

PHP中路径问题的解决方案

PHP安全配置

精品推荐
分类导航