Nginx 配置之 X Forwarded For
X-Forwarded-For
X-Forwarded-For
(XFF) 通常被当作 HTTP 请求头中的一个参数, 在客户端访问服务器的过程中如果需要经过 HTTP 代理或者负载均衡服务器(当前通常是 Nginx),可以被用来获取最初发起请求的客户端的 IP 地址,这个请求头现已成为事实上的标准(其标准版本是 Forwarded)。
其语法为:
X-Forwarded-For: <client>, <proxy1>, <proxy2>
Nginx 反向代理中的 X-Forwarded-For
X-Forwarded-For
在 nginx 配置中的格式一般为:
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
$proxy_add_x_forwarded_for
$proxy_add_x_forwarded_for
是最常用的配置变量,该变量可以在多层代理的情况下,依次获取整条链路所经过的客户端 IP 及所有代理服务器 IP(含当前代理服务器 IP)。
$http_x_forwarded_for
$http_x_forwarded_for
变量仅会直接获取上一层代理服务器中设置的 X-Forwarded-For
的值,并不会添加当前代理服务器 IP
参考来源:
https://developer.mozilla.org/zh-CN/docs/Web/HTTP/Headers/X-Forwarded-For > https://www.cnblogs.com/discuss/articles/1862259.html
https://www.cnblogs.com/wulm/p/9817319.html
https://www.cnblogs.com/diaosir/p/6890825.html