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...