仅允许从特定网络访问网站

时间:2010-11-16 16:32:02

标签: php html security networking

我正在建立一个吸引我学校学生的网站。如果用户在校园wifi或硬线上,我想只允许访问。使用PHP,我如何限制对校园互联网上的人的访问?

4 个答案:

答案 0 :(得分:2)

您需要获取一系列IP地址并将其放入while列表中。然后,您可以使用$ _SERVER ['REMOTE_ADDR']变量来检查白名单以进行访问。在页面的开头做这样的事情:

if(in_array($_SERVER['REMOTE_ADDR'],$white_list)) {
  //allow execution code?
} else {
  exit;
}

答案 1 :(得分:1)

这通常在网络服务器配置中完成,它具有也适用于图像的优点,但理论上你可以放

if ($_SERVER['REMOTE_ADDR'] != '...')
    die();

在每个PHP页面中。

答案 2 :(得分:0)

首先,您需要从学校的网络管理员处获取IP范围。 然后从PHP:

$ip=$_SERVER['REMOTE_ADDR'];
if(inRange($ip)) die();
else { ....

现在写入inRange($ ip)函数,如果给定的ip在范围内,则返回true。你可以使用explode函数来获取ip的部分进行比较.. :)

答案 3 :(得分:0)

已经提到了,但“正确”的方法是在网络服务器的设置中指定IP范围(IOW,不要用PHP做)