php - $_SERVER ['REMOTE_ADDR' ] 不适用于 php-fpm 和 nginx

标签 php nginx

我不知道为什么使用 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/

相关文章:

php - 如何将 Excel 电子表格中的字段自动填充到 Web 数据库中

php - 将 MYSQL CSV 保存到服务器

javascript - 我无法实时更新数据

node.js - Nginx 性能问题

php - 在 Symfony config env() helper 中使用解析操作符

php - 准备好的 SQL LIKE 语句不返回所有结果

apache - Confluence 中的 JIRA 问题/过滤器宏生成无效链接

nginx 代理到 Comet

docker - 无法通过 docker-letsencrypt-nginx-proxy-companion 启用 ssl

nginx - 如何将 Nginx 配置转换为 nginx-ingress?