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+MySQL的聊天室设计
Oct 09 PHP
怎样在php中使用PDF文档功能
Oct 09 PHP
PHP中的extract的作用分析
Apr 09 PHP
php 数组的创建、调用和更新实现代码
Mar 09 PHP
PHP+jQuery 注册模块的改进(一):验证码存入SESSION
Oct 14 PHP
PHP中实现获取IP和地理位置类分享
Feb 10 PHP
PHP中数据类型转换的三种方式
Apr 02 PHP
PHP获取页面执行时间的方法(推荐)
Dec 10 PHP
详解thinkphp实现excel数据的导入导出(附完整案例)
Dec 29 PHP
PHP调用Mailgun发送邮件的方法
May 04 PHP
PHP的微信支付接口使用方法讲解
Mar 08 PHP
Laravel 手动开关 Eloquent 修改器的操作方法
Dec 30 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
十大催泪虐心动漫电影,有几部你还没看
2020/03/04 日漫
php&amp;java(二)
2006/10/09 PHP
PHP5下$_SERVER变量不再受magic_quotes_gpc保护的弥补方法
2012/10/31 PHP
如何使用FireFox插件FirePHP调试PHP
2013/07/23 PHP
PHP微信开发之二维码生成类
2015/06/26 PHP
Laravel 使用查询构造器配合原生sql语句查询的例子
2019/10/12 PHP
PHP实现基本留言板功能原理与步骤详解
2020/03/26 PHP
Javascript 去除数组的重复元素
2010/05/04 Javascript
js下通过prototype扩展实现indexOf的代码
2010/12/08 Javascript
javascript日期转换 时间戳转日期格式
2011/11/05 Javascript
JS 实现导航栏悬停效果(续)
2013/09/24 Javascript
js读取json的两种常用方法示例介绍
2014/10/19 Javascript
JavaScript中的数组特性介绍
2014/12/30 Javascript
详解AngularJS中自定义指令的使用
2015/06/17 Javascript
利用jsonp跨域调用百度js实现搜索框智能提示
2016/08/24 Javascript
Vue 短信验证码组件开发详解
2017/02/14 Javascript
微信小程序 Nginx环境配置详细介绍
2017/02/14 Javascript
JS简单实现父子窗口传值功能示例【未使用iframe框架】
2017/09/20 Javascript
JavaScript fetch接口案例解析
2018/08/30 Javascript
ES6基础之字符串和函数的拓展详解
2019/08/22 Javascript
Vue中import from的来源及省略后缀与加载文件夹问题
2020/02/09 Javascript
使用Element的InfiniteScroll 无限滚动组件报错的解决
2020/07/27 Javascript
[01:35]2014DOTA2西雅图邀请赛 专访狐狸妈青春献给刀塔
2014/07/08 DOTA
[02:01]BBC DOTA2国际邀请赛每日综述:八强胜者组鏖战,中国队喜忧参半
2014/07/19 DOTA
[06:59]DOTA2-DPC中国联赛3月7日Recap集锦
2021/03/11 DOTA
Python打印“菱形”星号代码方法
2018/02/05 Python
pycharm 实现调试窗口恢复
2021/02/05 Python
Nike瑞典官方网站:Nike.com (SE)
2018/11/26 全球购物
技术副厂长岗位职责
2013/12/26 职场文书
机关会计岗位职责
2014/04/08 职场文书
精彩的演讲稿开头
2014/05/08 职场文书
四风对照检查材料思想汇报
2014/09/20 职场文书
任长霞观后感
2015/06/16 职场文书
总结python多进程multiprocessing的相关知识
2021/06/29 Python
SpringBoot系列之MongoDB Aggregations用法详解
2022/02/12 MongoDB
vue封装数字翻牌器
2022/04/20 Vue.js