避免从外部网络访问页面?

时间:2014-03-27 12:43:15

标签: php

我创建了一些显示某些excel文件数据的php页面。

我在办公室使用内部IP地址访问这些页面,其中所有PC都连接在同一网络上。我使用外部IP地址从家中访问这些页面。

所以我的问题是,如何设置密码或保护我的php页面访问外部网络?

即。当我从家里访问php网页时,它应该要求输入密码 - 我该如何做到这一点?

例如:hello.php

<?php
    echo"hello world";
?>

我想把密码放到这个php文件中,或者如果我使用外部ip地址访问它,那么它应该要求输入密码。

2 个答案:

答案 0 :(得分:0)

只需在办公室中定义您的IP,然后阻止其他人。

$white_list = array('8.8.8.8', '1.1.1.1');

if (! in_array($_SERVER['REMOTE_ADDR'], $white_list))
{
    header('Location: mypasswordpage.php');
}

答案 1 :(得分:0)

如果您想在PHP中执行此操作,可以使用:

if($_SERVER['REMOTE_ADDR'] != [YOUR OFFICE IP HERE]) {
    // die or throw an exception
}

还有很多安全组件。参见主要框架:

Symfony

Zend 2

您还可以配置apache以根据IP回击请求。见SO answer