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源代码
Oct 09 PHP
PHP与MySQL交互使用详解
Oct 09 PHP
ThinkPHP的MVC开发机制实例解析
Aug 23 PHP
php pthreads多线程的安装与使用
Jan 19 PHP
PHP使用内置函数生成图片的方法详解
May 09 PHP
php发送http请求的常用方法分析
Nov 08 PHP
利用PHPExcel实现Excel文件的写入和读取
Apr 26 PHP
PHP实现的简单AES加密解密算法实例
May 29 PHP
PHP PDOStatement::fetchObject讲解
Feb 01 PHP
PHP利用DWZ.CN服务生成短网址
Aug 11 PHP
laravel执行php artisan migrate报错的解决方法
Oct 09 PHP
Laravel框架处理用户的请求操作详解
Dec 20 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 基于文件头的文件类型验证类函数
2012/05/01 PHP
php的GD库imagettftext函数解决中文乱码问题
2015/01/24 PHP
功能强大的php文件上传类
2016/08/29 PHP
php使用正则表达式去掉html中的注释方法
2016/11/03 PHP
redirect_uri参数错误的解决方法(必看)
2017/02/16 PHP
基于jquery实现图片广告轮换效果代码
2011/07/07 Javascript
jQuery 复合选择器应用的几个例子
2014/09/11 Javascript
jQuery找出网页上最高元素的方法
2015/03/20 Javascript
jQuery实现大转盘抽奖活动仿QQ音乐代码分享
2015/08/21 Javascript
基于JS实现新闻列表无缝向上滚动实例代码
2016/01/22 Javascript
javascript实现移动端上的触屏拖拽功能
2016/03/04 Javascript
Jquery插件仿百度搜索关键字自动匹配功能
2016/05/11 Javascript
JavaScript学习小结之使用canvas画“哆啦A梦”时钟
2016/07/24 Javascript
微信小程序 实例应用(记账)详解
2016/09/28 Javascript
BootStrap整体框架之基础布局组件
2016/12/15 Javascript
详解使用vscode+es6写nodejs服务端调试配置
2017/09/21 NodeJs
Python版实现微信公众号扫码登陆
2020/05/28 Javascript
详解js中的几种常用设计模式
2020/07/16 Javascript
nodejs+express最简易的连接数据库的方法
2020/12/23 NodeJs
Python中关于Sequence切片的下标问题详解
2017/06/15 Python
Python将文本去空格并保存到txt文件中的实例
2018/07/24 Python
python实现TCP文件传输
2020/03/20 Python
python不同版本的_new_不同点总结
2020/12/09 Python
python用分数表示矩阵的方法实例
2021/01/11 Python
html5移动端自适应布局的实现
2020/04/15 HTML / CSS
XML文档定义有几种形式?它们之间有何本质区别?解析XML文档有哪几种方式?
2016/01/12 面试题
怎么样写好简历中的自我评价
2013/10/25 职场文书
历史系自荐信范文
2013/12/24 职场文书
企业家王石演讲稿:坚持与放下
2014/04/27 职场文书
党员自我剖析材料(群众路线)
2014/10/06 职场文书
幼儿园教师个人总结
2015/02/05 职场文书
入党转正介绍人意见
2015/06/03 职场文书
2016元旦晚会主持人开场白和结束语
2015/12/03 职场文书
php 文件上传至OSS及删除远程阿里云OSS文件
2021/07/04 PHP
JavaScript中的宏任务和微任务详情
2021/11/27 Javascript
Python探索生命起源 matplotlib细胞自动机动画演示
2022/04/21 Python