【发布时间】:2016-09-06 09:40:42
【问题描述】:
我有一台负载均衡器和三台装有 Linux 和 Apache 的 EC2 Web 服务器。每当我在 PHP 中使用 $_SERVER['REMOTE_ADDR'] 获取网站访问者的 IP 地址时,它都会显示错误的 IP 地址。当我检查 Whois 数据库中的 IP 时,我会发现它是一个保留 IP。我猜它是 AWS 本身的另一台服务器的 IP,而不是客户端的 IP。如何在 EC2 服务器中使用 PHP 获取正确的客户端 IP?
【问题讨论】:
-
这可能是负载均衡器的IP...您是否查看了
$_SERVER数组的其余部分,负载均衡器是否在单独的标头字段中转发客户端的IP? -
是的,我意识到负载均衡器在
$_SERVER['HTTP_X_FORWARDED_FOR']键下转发IP
标签: php amazon-web-services amazon-ec2 ip