php禁止某ip或ip地址段访问的方法

yipeiwu_com6年前PHP代码库

本文实例讲述了php禁止某ip或ip地址段访问的方法,分享给大家供大家参考。具体分析如下:

因为还没有深入学习Apache和nginx 所以用PHP写了一个可以禁用地址的小程序
使用时只需:

<?php include("banIP.php");?>

即可

禁用单个ip如下:

<?php 
//禁用ip地址 
$ip=$_SERVER["REMOTE_ADDR"]; 
$ban=file_get_contents("ban.dat"); 
if(stripos($ban,$ip)) 
{ 
  die("Your IP Address is:$ip,you're forbiden to view this page!");   
} 
echo "Your IP Address is:$ip,hello!"; 
?>

ban.dat文件如下:

BEGIN: 
119.184.251.245 
127.0.0.1 
192.168.1.100 

禁用ip段如下:

<?php 
//禁用ip地址 
$ip=$_SERVER["REMOTE_ADDR"]; 
while($ip[count($ip-1)]!='.')$ip=substr($ip,1, -1); //整理出ip段 
$ban=file_get_contents("ban.dat"); 
if(stripos($ban,$ip)) 
{ 
  die("U're forbiden to view this page!");   
} 
echo "Hello!"; 
?>

希望本文所述对大家的php程序设计有所帮助。

相关文章

解析php中array_merge与array+array的区别

array_merge是丢弃原来的数字的key,而保留字符串形式的key,然后组成一个新的数组,不管键名是否一样,都不合并,除非键名和value同时一样并且还必须是字符串形式的key才合...

thinkphp如何获取客户端IP

thinkphp框架中系统内置了get_client_ip方法用于获取客户端的IP地址,使用示例: $ip = get_client_ip(); 除了thinkphp内置get_cl...

php导出中文内容excel文件类实例

本文实例讲述了php导出中文内容excel文件类。分享给大家供大家参考。具体如下: <?php class toExcel{ public $link = nul...

PHP表单递交控件名称含有点号(.)会被转化为下划线(_)的处理方法

PHP表单递交控件名称含有点号(.)会被转化为下划线(_)的处理方法

最近在做公司项目的时候,发现一个奇怪的问题,递交一个正常表单,竟然发现不能正常获取到递交的值,这一发现,不免让我开始的时候一头雾水,开始的时候一度认为是我的服务有问题,不能正常的写入数据...

php 查找数组元素提高效率的方法详解

1.php in_array方法说明 PHP查找数组元素是否存在,一般会使用in_array方法。 bool in_array ( mixed $needle , array $hays...