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程序设计有所帮助。

相关文章

使用Zttp简化Guzzle 调用

Zttp 是 Adam Wathan 为了让代码更富表现力以及简化常见用例而写的一个 Guzzle 的封装。 这是使用 Zttp 去 Post 一个自定义头部内容请求的一个例子:...

微盾PHP脚本加密专家php解密算法

复制代码 代码如下: <?php /*********************************** *威盾PHP加密专家解密算法 By:Neeao *http://Neea...

教你在header中隐藏php的版本信息

前言 在php渲染的网页header信息中,会包含php的版本号信息,比如: X-Powered-by: php/5.3.3,这有些不安全,有些黑客可能采用扫描的方式,批量寻找低版本的p...

PHP 在5.1.* 和5.2.*之间 PDO数据库操作中的不同之处小结

介绍 今天发现php5.1.*和php5.2.*在数据库预编译代码执行的时候出现差异。 预编译优点 1.使用占位符,避免逐字输入数据到SQL中。自动处理引号和反斜线等字符的转义——增加安...

phpfpm的作用和用法

PHP-FPM(FastCGI Process Manager:FastCGI进程管理器)是一个PHPFastCGI管理器,对于PHP 5.3.3之前的php来说,是一个补丁包 ,旨在将...