Nginx real_ip module doesn't work in some conditions

romkaltu nginx-forum at forum.nginx.org
Sat Aug 27 19:02:16 UTC 2016


So I have Nginx proxy and some servers running behind it. I need to know
real users IP not proxy, so I using real_ip module. Everything is working as
expected, but if I configure vhost like subdomain.domain.com backend getting
Nginx proxy IP.

Here is my Nginx config sample

set_real_ip_from  192.168.2.0/24;
real_ip_header    X-Forwarded-For;
real_ip_recursive on;

upstream srv1 { server 192.168.2.12:80; }

server {

        listen       80;
        server_name  dev.somedomain.com;

        location / {
         proxy_pass  http://srv1;
       }

}

server {

        listen       80;
        server_name  somedomain.com;

        location / {
          proxy_pass  http://srv1;
        }

}

So if I go to somedomain.com backend receiving real IP, no problems here.
But for dev.somedomain.com backend receiving proxy IP!

And this is only shortened example, same situation with different domains
and subdomains...

Posted at Nginx Forum: https://forum.nginx.org/read.php?2,269232,269232#msg-269232



More information about the nginx mailing list