我不知道为什么使用 nginx 这个变量 $_SERVER['REMOTE_ADDR'] 不回显 IP。在所有其他 Web 服务器上,它都可以正常工作。
有什么建议吗?
最佳答案
我怀疑它与 nginx(网络服务器)和 fastcgi 之间的接口(interface)有关,fastcgi 是运行 PHP 的 API。
根据您提供的信息,Server API是:FPM/FastCGI
我建议你仔细看看 PHP 是如何安装 nginx 的细节(你没有提供)。
如果您不需要 nginx 的性能,那么您可能会发现一个实用的解决方案是只使用 apache。我使用 nginx 作为 apache 前面的反向代理,但这引入了一些额外的问题,将 REMOTE_ADDR 传递给 PHP(特别是 mod_rpaf)。
祝你好运!
关于php - $_SERVER ['REMOTE_ADDR' ] 不适用于 php-fpm 和 nginx,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4834632/