有时需要根据 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.mangguo.org/404.html');
else
header('Location: http://www.mangguo.org/homepage.html');
?>

You must be logged in to leave a reply.