在多层nginx中,若在后层的代理服务器中获得真实的用户IP,而不是上一层的代理服务器的IP,在反向代理服务器在转发请求的http头信息中,可以增加x_forwarded_for信息,用以记录原有客户端的IP地址和原来客户端的请求的服务器地址;即如下添加:
server {
proxy_set_header Host $host;
proxy_set_header X-Real-Ip $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for 一句会一层一层的记录转发信息 $http_x_forwarded_for记录的是原始用户的IP