HTTP标头的维基百科描述X-Forwarded-For
是:
X-Forwarded-For:client1、proxy1、proxy2、...
该指令的 nginx 文档real_ip_header
部分内容如下:
该指令设置用于传输替换 IP 地址的标头的名称。
在 X-Forwarded-For 的情况下,此模块使用X-Forwarded-For 标头中的最后一个ip 进行替换。[强调我的]
这两种描述似乎相互矛盾。在我们的场景中,X-Forwarded-For
标头与所描述的完全一样——客户端的“真实”IP 地址是最左边的条目。同样,nginx 的行为是使用最右边的值——很明显,它只是我们的代理服务器之一。
我的理解X-Real-IP
是它应该用于确定实际的客户端 IP 地址——而不是代理。我是否遗漏了什么,或者这是 nginx 中的错误?
而且,除此之外,是否有人对如何使X-Real-IP
标题显示最左边的值有任何建议,如 的定义所示X-Forwarded-For
?