Php 仅使用$#u SERVER[';REMOTE#u ADDR';]来显示';是否安全;秘密内容';基于IP地址?

Php 仅使用$#u SERVER[';REMOTE#u ADDR';]来显示';是否安全;秘密内容';基于IP地址?,php,ip,ip-address,Php,Ip,Ip Address,我有下面的代码在一个公开访问的网页上显示秘密内容。这个秘密内容只能被“坐在”1-3个特定IP地址后面的人看到。我只使用了$\u SERVER['REMOTE\u ADDR']就尝试了下面的代码,它是有效的,我以前也使用过:HTTP\u X\u FORWARDED等,并且: 如果依赖IP地址完成任务关键型任务,请求助于 远程地址,不必费心迎合代理背后的人 仅使用$\u SERVER['REMOTE\u ADDR']根据IP地址显示“机密内容”是否安全 $allowed_ips = array(

我有下面的代码在一个公开访问的网页上显示秘密内容。这个秘密内容只能被“坐在”1-3个特定IP地址后面的人看到。我只使用了
$\u SERVER['REMOTE\u ADDR']
就尝试了下面的代码,它是有效的,我以前也使用过:HTTP\u X\u FORWARDED等,并且:

如果依赖IP地址完成任务关键型任务,请求助于 远程地址,不必费心迎合代理背后的人

仅使用$\u SERVER['REMOTE\u ADDR']根据IP地址显示“机密内容”是否安全

$allowed_ips = array(
    '111.222.333.444',
    '555.666.777.888',
    '999.111.222.333'
);

if (in_array($_SERVER['REMOTE_ADDR'], $allowed_ips))
{
    echo 'this is secret stuff only for certain IPs';
}

嗯,这很有效。您还可以让web服务器直接处理它;但这是否“更好”取决于您当前的代码。为其他标题添加额外的检查,例如为添加HTTP\u X\u FORWARDED\u,会降低安全性,而不是更安全。我使用的代码正是为了在我的公共网站的页面上包含一些管理链接。没什么要紧的,但我希望除了我自己,其他人都看不见我的东西。但我最近有个想法。。。除非您不允许,否则缓存是否有可能保存包含机密内容的页面,并将其发送给请求相同页面的任何其他客户端?即使该客户端不是允许的IP之一?