Nginx Web服务器标准IP解决方案
Nginx Web服务器在使用的时候常常会使服务取ip出现问题,让Nginx Web服务器直接支持x_forwarded_for是其中一种解决方案。那么我们要如何才能使用这样的方案呢?
set $ip $http_x_forwarded_for; if ($ip ~ ^$ ) { set $ip $remote_addr; } proxy_set_header X-Forwarded-For "$ip, $server_addr";
用这段代码就可以让Nginx Web服务器支持标准的x_forwarded_for,在某些情况下,可以用:
proxy_set_header X-Forwarded-For "$ip";
不把Nginx Web服务器机器的ip地址加进去。
附:x_forwarded_for取ip的正确方式
x_forwarded_for是将请求路过的代理服务器的ip都记录下来的一条字符串,每经过一个代理服务器,x_forwarded_for就会在它的后面加上这个代理服务器的ip地址。常见的:
119.120.112.157, 61.135.253.11
这样就表示请求经过了一个代理服务器61.135.253.11。
119.120.112.157, 61.135.253.11, 192.168.0.13
经过了两个代理服务器61.135.253.11和192.168.0.13。
这样看起来取第一个ip地址就是正确的,不过这比较草率:
相关推荐
windle 2020-10-29
superyu 2020-09-10
nginxs 2020-11-14
Guanjs0 2020-11-13
小木兮子 2020-11-11
yserver 2020-11-11
ssihc0 2020-11-11
windle 2020-11-10
HanksWang 2020-11-10
liuchen0 2020-11-10
Freshairx 2020-11-10
ccschan 2020-11-10
liwf 2020-11-10
Guanjs0 2020-11-09
AderStep 2020-11-09
zrtlin 2020-11-09