0

我有一个运行 Apache 2.4.25 (Debian) PHP 7.3.5 的 Docker 服务器。此容器“托管”在 Amazon Elastic Container Service 中。默认 AWS EC2 位于 AWS 应用程序负载均衡器后面。

我希望能够在 PHP 中获取用户/客户端 IP 地址。

基于我有限的知识,我的假设是这个 IP 地址需要从 ALB 传递到 EC2,然后传递到 Docker 容器,最后由 Apache 获取。

我试图通过尝试在本地计算机上运行的 Docker 容器中获取 IP 来缩短堆栈,但是我仍然无法找到 Docker 获取 IP 并将其传递给 Apache 的方法。

我通常知道您会从 ALB 获得 X-Forwarded 标头,但我无法弄清楚 Docker 如何将其传递给 Apache。

我希望客户端 IP 位于$_SERVER['REMOTE_ADDR']or中$_SERVER['X_FORWARDED']

在 AWS 托管的 Docker 容器 $_SERVER['REMOTE_ADDR']中包含 VPC 子网中的 IP $_SERVER['X_FORWARDED']不存在

4

0 回答 0