php中禁止单个IP与ip段访问的代码小结


Posted in PHP onJuly 04, 2012

禁止单个IP
<?php
//加IP访问限制
if(getenv('HTTP_CLIENT_IP') && strcasecmp(getenv('HTTP_CLIENT_IP'), 'unknown')) {
$userip = getenv('HTTP_CLIENT_IP');
} elseif(getenv('HTTP_X_FORWARDED_FOR') && strcasecmp(getenv('HTTP_X_FORWARDED_FOR'), 'unknown')) {
$userip = getenv('HTTP_X_FORWARDED_FOR');
} elseif(getenv('REMOTE_ADDR') && strcasecmp(getenv('REMOTE_ADDR'), 'unknown')) {
$userip = getenv('REMOTE_ADDR');
} elseif(isset($_SERVER['REMOTE_ADDR']) && $_SERVER['REMOTE_ADDR'] && strcasecmp($_SERVER['REMOTE_ADDR'], 'unknown')) {
$userip = $_SERVER['REMOTE_ADDR'];
}
$banned_ip = array (
"127.0.0.1",
"203.0.0.1",
"56.12.50.65",
"192.168.1.88"
);
if (in_array($userip,$banned_ip))
{
die ("Your IP is block to connect !");
}
echo "三水点靠木测试";
?>
禁止IP段

<?php 
//加IP访问限制 
if(getenv('HTTP_CLIENT_IP') && strcasecmp(getenv('HTTP_CLIENT_IP'), 'unknown')) { 
$userip = getenv('HTTP_CLIENT_IP'); 
} elseif(getenv('HTTP_X_FORWARDED_FOR') && strcasecmp(getenv('HTTP_X_FORWARDED_FOR'), 'unknown')) { 
$userip = getenv('HTTP_X_FORWARDED_FOR'); 
} elseif(getenv('REMOTE_ADDR') && strcasecmp(getenv('REMOTE_ADDR'), 'unknown')) { 
$userip = getenv('REMOTE_ADDR'); 
} elseif(isset($_SERVER['REMOTE_ADDR']) && $_SERVER['REMOTE_ADDR'] && strcasecmp($_SERVER['REMOTE_ADDR'], 'unknown')) { 
$userip = $_SERVER['REMOTE_ADDR']; 
} 
$ban_range_low=ip2long("217.0.0.0"); //ip段上 
$ban_range_up=ip2long("217.255.255.255");//ip段尾 
$ip=ip2long($userip]); 
if ($ip>$ban_range_low && $ip<$ban_range_up) 
{ 
print "Banned"; 
exit(); 
} 
?>
PHP 相关文章推荐
PHP实现文件下载详解
Nov 27 PHP
php动态生成版权所有信息的方法
Mar 24 PHP
php使用for语句输出三角形的方法
Jun 09 PHP
PHP面试题之文件目录操作
Oct 15 PHP
PHP7之Mongodb API使用详解
Dec 26 PHP
WordPress开发中用于标题显示的相关函数使用解析
Jan 07 PHP
PHPExcel中文帮助手册|PHPExcel使用方法(分享)
Jun 09 PHP
Django中的cookie与session操作实例代码
Aug 17 PHP
laravel 实现设置时区的简单方法
Oct 10 PHP
laravel框架 laravel-admin上传图片到oss的方法
Oct 13 PHP
laravel 创建命令行命令的图文教程
Oct 23 PHP
php双向队列实例讲解
Nov 17 PHP
提高php运行速度的一些小技巧分享
Jul 03 #PHP
PHP连接SQLServer2005的实现方法(附ntwdblib.dll下载)
Jul 02 #PHP
php.ini-dist 和 php.ini-recommended 的区别介绍(方便开发与安全的朋友)
Jul 01 #PHP
apache+codeigniter 通过.htcaccess做动态二级域名解析
Jul 01 #PHP
php下载文件的代码示例
Jun 29 #PHP
PHP sprintf() 函数的应用(定义和用法)
Jun 29 #PHP
php 对输入信息的进行安全过滤的函数代码
Jun 29 #PHP
You might like
深入解析PHP垃圾回收机制对内存泄露的处理
2013/06/14 PHP
浅析PHP中的 inet_pton 网络函数
2019/12/16 PHP
javascript 简练的几个函数
2009/08/29 Javascript
jqPlot 图表中文API使用文档及源码和在线示例
2012/02/07 Javascript
JavaScript 代码压缩工具小结
2012/02/27 Javascript
JavaScript中判断整字类型最简洁的实现方法
2014/11/08 Javascript
JQuery实现的购物车功能(可以减少或者添加商品并自动计算价格)
2015/01/13 Javascript
jquery使用正则表达式验证email地址的方法
2015/01/22 Javascript
jquery获得当前html页面源码的方法
2015/07/14 Javascript
form+iframe解决跨域上传文件的方法
2016/11/18 Javascript
深入理解JavaScript中的尾调用(Tail Call)
2017/02/07 Javascript
原生js简单实现放大镜特效
2017/05/16 Javascript
jQuery实现锚点向下平滑滚动特效示例
2017/08/29 jQuery
Vue.js移动端左滑删除组件的实现代码
2017/09/08 Javascript
原生JS实现瀑布流插件
2018/02/06 Javascript
[01:06:12]VP vs NIP 2019国际邀请赛小组赛 BO2 第一场 8.15
2019/08/17 DOTA
[48:46]完美世界DOTA2联赛PWL S2 SZ vs FTD.C 第二场 11.19
2020/11/19 DOTA
探究数组排序提升Python程序的循环的运行效率的原因
2015/04/01 Python
举例讲解Python设计模式编程的代理模式与抽象工厂模式
2016/01/16 Python
关于Python中异常(Exception)的汇总
2017/01/18 Python
Pycharm学习教程(7)虚拟机VM的配置教程
2017/05/04 Python
python导出chrome书签到markdown文件的实例代码
2017/12/27 Python
Anaconda2下实现Python2.7和Python3.5的共存方法
2018/06/11 Python
Python实现基于socket的udp传输与接收功能详解
2019/11/15 Python
Python多进程multiprocessing、进程池用法实例分析
2020/03/24 Python
自定义实现 PyQt5 下拉复选框 ComboCheckBox的完整代码
2020/03/30 Python
python 如何调用 dubbo 接口
2020/09/24 Python
Python基于argparse与ConfigParser库进行入参解析与ini parser
2021/02/02 Python
新奇的小玩意:IWOOT
2016/07/21 全球购物
使用Vue.js和MJML创建响应式电子邮件
2021/03/23 Vue.js
《小松树和大松树》教学反思
2014/02/20 职场文书
校庆口号
2014/06/20 职场文书
2015年小学一年级班主任工作总结
2015/05/21 职场文书
幼儿园园长六一致辞
2015/07/31 职场文书
详解Redis实现限流的三种方式
2021/04/27 Redis
Python OpenCV超详细讲解基本功能
2022/04/02 Python