如何在不使用数据库直接在PHP页面设置允许访问的IP段,如果来访者的IP不在这个IP段内就提示无权访问。青岛星网跟大家分享:PHP读取IP文件限制IP访问的函数。
PHP读取IP文件限制IP访问的函数
class IP{ //获取客户IP地址 function getIpAdr(&$ip){ $ip1=getenv("HTTP_X_FORWARDED_FOR"); $ip2=getenv("HTTP_CLIENT_IP"); $ip3=getenv("REMOTE_ADDR"); if($ip1&&$ip1!='unknow') $ip=$ip1; else if($ip2&&$ip2!='unknow') $ip=$ip2; else if($ip3&&$ip3!='unknow') $ip=$ip3; else $ip='127.0.0.1'; } } function get_netip($myip){ //只留客户IP地址的前三位 $temp=explode(".",$myip); $netip.=$temp[0]; $netip.="."; $netip.=$temp[1]; $netip.="."; $netip.=$temp[2]; return $netip; } $filename="qdxw.ini"; //定义操作文件 $ip_lib=file($filename); //读取文件数据到数组中 $allow=0; $IP=new IP; $thisip=""; $IP->getIpAdr(&$thisip); $thenetip=get_netip($thisip); for($i=0;$i<count($ip_lib);$i++){ if(ereg($thenetip,$ip_lib[$i])){ $allow=1; break; } } if ($allow==1) { echo "验证通过"; } else { echo "<script>location.href='Error.php';</script>"; }
青岛星网温馨提醒:
待自己建立qdxw.ini文件
在这个文件里输入允许访问的IP段
如:
110.110.110
111.111.111
112.112.112
192.168.1
192.168.0
...
只需要输入前三位就行了!