首页 > 解决方案 > 使用 mod_rpaf / mod_remoteip 修复远程 IP 和 REMOTE_ADDR 不起作用

问题描述

所以我正在将一些遗留的 PHP 项目从旧服务器迁移到新服务器。新服务器使用 Debian 10 / Nginx / Apache 2.4 / PHP 5.6.40

我已经像以前一样设置了所有东西,使用 mod_rpaf 用来自 X-Real-IP 中的 nginx 的地址覆盖远程 IP 地址。$_SERVER['HTTP_X_REAL_IP']我在 PHP中看到了正确的地址,但$_SERVER['REMOTE_ADDR']仍然是“127.0.0.1”

我已经尝试过的事情:

因此,我陷入了死胡同,没有其他选择,只能isset($_SERVER['HTTP_X_REAL_IP']) && $_SERVER['HTTP_X_REAL_IP'] || $_SERVER['REMOTE_ADDR']在代码中到处使用丑陋的结构...

但我仍然希望我缺少一些东西。

更新:事实上, auto_prepend_file 选项有效,但感觉有点 hacky ......我仍然想找到一个更好的选项。

标签: phpapachenginxphp-5.6apache2.4

解决方案


推荐阅读