ruby-on-rails – 使用Rails和Nginx获取客户端的真实IP地址?

我的服务器没有公共IP地址,所以我不知道如何获取真实客户端的IP地址.

这是我的nginx的配置:

location / {
    proxy_pass http://domain1;
    proxy_set_header        Host            $host;
    proxy_set_header        X-Real-IP     $remote_addr;
    proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
}

在我的Rails应用程序的控制器中,request.ip和request.remote_ip都返回我服务器的网关地址.

我如何获得客户的真实IP?

如何从Rails请求中获取X-Forwarded-For值?

最佳答案
您应该获得标头值X-forwarded-for

http://en.wikipedia.org/wiki/X-Forwarded-For

转载注明原文:ruby-on-rails – 使用Rails和Nginx获取客户端的真实IP地址? - 代码日志