1

我有 2 台服务器从那里获得我的客户$_SERVER['REMOTE_ADDR']

在服务器 (A) 上,我将 IP 存储$_SERVER['REMOTE_ADDR']在数据库中并执行header('Location: ...')到服务器 (B)。服务器 (B),$_SERVER['REMOTE_ADDR']在屏幕上打印/回显 ip。

旁注:服务器(A)上的页面从 iframe 内部被调用,服务器(B)的页面随后被加载到同一个 iframe 中。

但是,当我比较两个结果时,我可以看到服务器 (A) 返回本地网络 IP,服务器 (B) 返回外部 IP。这是什么原因?我希望两者都是本地/外部 ip 作为行为。

4

1 回答 1

1

从 php 手册:

$_SERVER 是一个包含标题、路径和脚本位置等信息的数组。此数组中的条目由 Web 服务器创建。无法保证每个 Web 服务器都会提供其中任何一个;服务器可能会省略一些,或提供此处未列出的其他内容。 也就是说,在 » CGI/1.1 规范中包含了大量这些变量,因此您应该能够预料到这些变量。

出于安全原因,您的服务器 A 可能不允许获取远程 IP 地址。

于 2013-04-03T07:50:25.647 回答