>백엔드 개발 >PHP 튜토리얼 >단일 IP 주소 또는 IP 세그먼트에 대한 액세스를 금지하는 PHP 구현 코드

단일 IP 주소 또는 IP 세그먼트에 대한 액세스를 금지하는 PHP 구현 코드

WBOY
WBOY원래의
2016-07-25 09:00:281085검색
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();
}
?> 
您可能感兴趣的文章: PHP禁止IP访问网站的实例代码 php禁止ip访问的函数


성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.