是否有任何方法可用,通过我们可以确定我们当前的连接是通过 Internet 还是使用 php 脚本的 Intranet。
谢谢.....
您可以对照 $_SERVER['REMOTE_ADDR'] 检查 $_SERVER['SERVER_ADDR'] 如果 IP 的第一个数字相同并且是 192,172,10 或 127,那么它很可能是一个 Intranet 页面。
像这样:
function is_intranet() {
$serverIP = explode('.',$_SERVER['SERVER_ADDR']);
$localIP = explode('.',$_SERVER['REMOTE_ADDR']);
return (
($serverIP[0] == $localIP[0]) &&
(in_array($serverIP[0],array('127','10','172','192') ) )
);
}
这可以使用这里的规则进行一些改进:http ://en.wikipedia.org/wiki/Private_network
您可以使用$_SERVER["HTTP_HOST"]
变量来获取它是否是localhost
或其他 IP 地址。