php代码如何实现禁用单个ip或Ip段的访问呢,为大家提供二段参考代码,有兴趣的朋友,可以看看。
1、禁止单个IP访问 <?php //加IP访问限制 //搜集整理 程序员之家 bbs.it-home.org 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 ("对不起,您的IP被禁止访问!"); } echo "您可以正常访问,马上为您跳转!"; ?> 登录后复制 既然说到了如何禁止IP地址访问,那么掌握如何获取真实的IP地址的方法,便成了必须加强的基本技能。 有兴趣的朋友,可以参考如下的文章: php 获取外网真实IP的二种方法 php 获取客户端IP地址、地理信息、浏览器信息、本地真实IP的代码 php获取准确的客户端IP地址的代码 php实现过滤IP黑白名单的方法 php获取ip的多种方法 php获取访客IP的方法 2、禁止IP段访问 <?php //加IP访问限制 //by 程序员之家 http://bbs.it-home.org 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(); } ?> 登录后复制 |