欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

php禁止ip访问的函数

程序员文章站 2022-03-23 08:39:43
...
为大家提供一个可以禁止IP访问的函数,包含一个信任IP访问的函数,有需要的朋友可以参考下。

完整代码如下。


/**
* 禁止IP访问的函数
* 搜集 程序员之家 bbs.it-home.org
*/
function check_ip($range,$ip='') {
if($ip == '') $ip = getenv("REMOTE_ADDR");
if ($ip == "127.0.0.1") return 1;
$result = 1;
if (ereg("([0-9]+).([0-9]+).([0-9]+).([0-9]+)/([0-9]+)",$range,$regs)) {
   $ipl = ip2long($ip);
   $rangel = ip2long($regs[1] . "." . $regs[2] . "." . $regs[3] . "." . $regs[4]);

   $maskl = 0;

for ($i = 0; $i $regs[2]) || ($ipocts[$i]  $ipocts[$i]) {
    $result = 0;
}
}
}
}
return $result;
}

function auth_ip(){
   $result = 0;
   $null_check = 1;

   $path = "ip.cf"; //ip限制配置文件,每行的格式为
/*
xxx.xxx.xxx.xxx 比如 127.0.0.2
xxx.xxx.xxx.[yyy-zzz] 比如 1270.0.0.[2-23]
xxx.xxx.xxx.xxx/nn 比如 127.0.0.0/24
*/
$fg=@fopen($path,"r");

while($line=@fgets($fg,1024)){
$line = trim($line);
$line=ereg_replace("#.*","",$line);
if ($line != ""){
$null_check = 0;
if (check_ip($line)) {
fclose($fg);
return 1;
}
}
}
@fclose($fg);
if ($null_check == 1) return 1;
return $result;
}
?>
您可能感兴趣的文章: PHP禁止IP访问网站 php 禁止单个IP地址或IP段访问