如果未设置nginx fastcgi_param REMOTE_ADDR,$ _SERVER ['REMOTE_ADDR']内部是什么?

时间:2017-09-07 13:46:59

标签: php nginx

如果没有设置nginx fastcgi_param REMOTE_ADDR,那么php的$ _SERVER ['REMOTE_ADDR']内部是什么? 我有两个服务器的不同行为,使用nginx和php-fpm。两者的配置完全相同。但是一个人一直返回带有新ip值的$ _SERVER ['REMOTE_ADDR'],而另一个没有,正如预期的那样,在nginx的fastcgi_param.conf文件中没有REMOTE_ADDR指令。 我没有其他配置,但只有

fastcgi_param  SCRIPT_FILENAME    $document_root$fastcgi_script_name;
fastcgi_param  QUERY_STRING       $query_string;

这就是全部。但是php的$ _SERVER ['REMOTE_ADDR']一直都有新的价值。

1 个答案:

答案 0 :(得分:0)

答案是:fastcgi_param.conf文件不为空,有REMOTE_ADDR指令。原因是在PHP代码中,而不是在nginx中。

P.S。在Unix中再见的坏主意。请记住,如果您不在sudo中并且使用vim,则会看到任何root拥有的文件为空。