PHP 根据IP地址控制访问的代码_php实例

假设有 IP 地址范围 192.168.0.0~192.168.0.255,只允许此 IP 段访问的代码如下:

复制代码 代码如下:

<?php
$IP = $_SERVER['REMOTE_ADDR'];
$from = strcmp($IP,'192.168.0.0');
$to = strcmp($IP,'192.168.0.255');
if (!($from >= 0 && $to <= 0))
echo "Access Denied";
else
echo "Homepage";
?>

从流程上讲,这段代码首先捕获访客 IP 地址,然后判断该 IP 地址是否符合访问条件。符合则正常输出页面,反之拒绝访问。

据此,如果用户 IP 地址满足要求,只需简单输出或包含页面文件即可。文件包含代码如下:

复制代码 代码如下:

<?php
if (!($from >= 0 && $to <= 0))
echo "Access Denied";
else
include('homepage.html')";
?>

当然,也可以按判断结果跳转至不同页面。跳转代码如下:

复制代码 代码如下:

<?php
if (!($from >= 0 && $to <= 0))
header('Location: http://www.jb51.net/404.html');
else
header('Location: http://www.jb51.net/index.html');
?>

时间: 2024-10-28 19:51:42

PHP 根据IP地址控制访问的代码_php实例的相关文章

一个图形显示IP的PHP程序代码_php实例

先看代码sunip.php 复制代码 代码如下: <?php  header("Content-type: image/gif");  $im = imagecreate(130,15);  $background_color = ImageColorAllocate ($im, 255, 255, 255);   unset($ip);  if($_SERVER['HTTP_CLIENT_IP']){  $ip=$_SERVER['HTTP_CLIENT_IP'];  } el

PHP获取客户端真实IP地址的5种情况分析和实现代码_php实例

在PHP获取客户端IP中常使用 $_SERVER["REMOTE_ADDR"] . (1) 但如果客户端是使用代理服务器来访问,那取到的是代理服务器的 IP 地址,而不是真正的客户端 IP 地址.要想透过代理服务器取得客户端的真实 IP 地址,就要使用 $_SERVER["HTTP_X_FORWARDED_FOR"] 来读取. (2) 但只有客户端使用"透明代理"的情况下,$_SERVER["HTTP_X_FORWARDED_FOR&q

PHP限制页面只能在微信自带浏览器访问的代码_php技巧

为了防止自己辛辛苦苦做的webapp被人copy,我们都想限制程序只能在微信里面浏览,虽然下面实现了这个功能,单都是小菜,没什么技术含量,懂代码的伪造下就破了.下面是PHP限制页面只能在微信自带浏览器访问的代码. 复制代码 代码如下: <!--?php <br ?--> $useragent = $_SERVER['HTTP_USER_AGENT']; if (strpos($useragent, 'MicroMessenger') === false) { echo " 非微

php防止网站被攻击的应急代码_php实例

前不久一个网站竟然被攻击,数据库被刷掉了,幸好客户机器上有数据库备份.遇到这么严重的问题,必须抓紧找出漏洞,防止再次被攻击.各方面检查之后发现除了服务器需要设置正确之外,其他无从下手,只好从ip地址上来解决这种攻击的问题. 如果发现某个ip访问网站太频繁了就加入到黑名单禁止访问,这不是一个很好的办法,但情急之下向不更好的解决方式,只是权宜之计,以后再进行深入的研究一下. 这个方法总结为一句话就是:通过禁止IP频繁访问防止网站被防攻击. <?php header('Content-type: te

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

禁止单个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'

asp实现限制IP或IP段访问网站代码

 代码如下 复制代码 <% ''获取访问者的地址 ip=Request.ServerVariables("REMOTE_ADDR") ''允许的IP地址段为10.0.0.0-10.68.63.255 allowip1="10.0.0.0" allowip2="10.68.10.71" response.writecheckip(ip,allowip1,allowip2) functioncheckip(ip,allowip1,allowip

PHP制作登录异常ip检测功能的实例代码_php实例

使用函数查询数据库遍历实现 /** * 不在常用ip地址登录返回描红信息 * @param string $ip ip地址 * @param string $name 用户名 * @return string */ function errorIp($ip,$name){ $nowip = get_client_ip(); //判断ip和当前ip是否相同,不同则查询数据库对比 if($ip == $nowip ){ //相同直接返回字符串 $str = '<font color="blue

IP138 IP地址查询小偷实现代码_php实例

复制代码 代码如下: <?Php $ip="www.jb51.net"; //$ip可以任意改成其他域名或者是ip地址 $source=file_get_contents('http://www.ip138.com/ips.asp?ip='.$ip.'&action=2'); //正则匹配 preg_match_all("/<li>(.*)<\/li>/isU",$source,$result); print_r($result

推荐的用Asp实现屏蔽IP地址访问的代码_应用技巧

By zkxp 2/15/2006 http://zkxp.cnblogs.com '受屏蔽IP地址(段)集合,星号为通配符,通常保存于配置文件中. <% Const BadIPGroup = "220.200.59.136|220.205.168.141" If IsForbidIP(BadIPGroup) = True Then     Response.Write(GetUserIP &"IP地址禁止访问")     Response.End()