首页 文章

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

提问于
浏览
2

当我使用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-FORWARDED-FOR之前:10.87.50.47.51579

在我的测试之后:X-FORWARDED-FOR:100.100.100.100,10.87.50.47.51579

为什么不能取代原来的 Value ?或者有没有其他方法来修改X-Forwarded-For标头?

任何帮助我会appricaite!谢谢

1 回答

  • 3

    我找到了答案 . 在应用程序请求路由缓存 - >服务器代理设置 - >保留以下 Headers 中的客户端IP - >将其留空 .

    http://technet.microsoft.com/en-us/library/dd443533(v=ws.10).aspx

    在以下标头中保留客户端IP:

    指示标头是否应保留指定标头值的客户端IP地址 . 默认值为X-Forwarded-For . 如果将此字段留空,则不会将任何客户端IP地址作为自定义标头传递给应用程序服务器 .

相关问题