2012-09-06 71 views

回答

0

这是间接的答案,但您可以拨打phpinfo()以显示所有的$_SERVER$_REQUEST值。尝试调用它,并在显示的网页中搜索“X-Forwarded-For”。

如果该值在输出中,您将很容易找到它的位置。如果没有,那么浏览器可能不会发送该标题。

+0

我已经检查了phpinfo,它没有显示X-Forwarded-For服务器变量,我怎么能启用它。 – sona

+0

如果没有显示,那么服务器没有收到标题。如果您询问这个字段,那么您的应用程序可能位于负载均衡器或代理之后。您的网络管理员必须配置负载均衡器才能将标头添加到HTTP通信。 – GargantuChet

+0

不需要在apache中启用? – sona

0

这将是$_SERVER超全局

$_SERVER['X-Forwarded-For']; 
+0

它是这样说的未定义索引:X-Forwarded-For – sona

0

你可以尝试这样的事情;

$headers = apache_request_headers(); 
$real_client_ip = $headers["X-Forwarded-For"]; 

这是你需要的东西吗?

+0

它返回空值。 – sona

+0

Web服务器运行Apache还是nGinx? –

+0

web服务器是apache – sona

相关问题