如何在IIS反向代理设置中设置X-Forwarded-For头?

utugiqy6  于 2022-11-12  发布在  其他
关注(0)|答案(2)|浏览(282)

使用IIS作为反向代理服务器时,我希望将远程用户的IP地址传递到后端Web服务器。必须使用X-Forwarded-For标头完成此操作。我希望在X-Forwarded-For标头中仅保留远程用户IP,这将清除任何其他代理服务器IP。
所以我使用URL重写代理来测试X-Forwarded-For是否可以被修改。这是我的设置:

<rule name="replace X forward for">
    <match url=".*" />
    <serverVariables>
        <set name="HTTP_X_FORWARDED_FOR" value="100.100.100.100" />
    </serverVariables>
    <action type="None" />
</rule>

在我的测试之前X-转发-用于:10.87.50.47.51579
在我的测试之后:已发送X-转发至:100.100.100.100,10.87.50.47.51579
为什么不能替换原来的值?或者有没有其他方法可以修改X-Forwarded-For头?
任何帮助我都会appricaite!谢谢

4nkexdtk

4nkexdtk1#

我找到了答案。在应用程序请求路由缓存--〉服务器代理设置--〉在下面的头中保留客户端IP--〉将其留空。
http://technet.microsoft.com/en-us/library/dd443533(v=ws.10).aspx
保留下列信头中的客户端IP:
指示标头是否应保留指定标头值的从属端IP位址。预设值为X-Forwarded-For。如果您将此字段保留空白,则不会将从属端IP位址作为自订标头传送至应用程序服务器。

kr98yfug

kr98yfug2#

我得到了和穆昆一样的结果。我将字段设置为“无”,得到了我要找的结果。
enter image description here

相关问题