Iis
啟用代理模式的 IIS IP 地址和域限制拒絕允許 x-forwarded-for
根據這些文件,如果設置為 true ,IIS 應該允許根據
x-forwarded-for
IIS 看到的地址進行 IP 地址限制,如果它位於代理後面。enableProxyMode
我已編輯功能設置以啟用代理模式,並為我們的代理 IP 地址添加了“允許”條目。我的問題是,當我嘗試連接時,我仍然收到拒絕 403 禁止。值得注意的是,我僅在特定網站的其中一個應用程序上進行了配置。IIS 版本是 8.0.x。我在完全重置 IIS 並驗證了 applicationHost.config 後進行了測試:
<location path="mysite.com/myapp"> <system.webServer> <security> <ipSecurity allowUnlisted="false" enableProxyMode="true"> <add ipAddress="my proxy ip..." allowed="true" /> </ipSecurity> </security> </system.webServer> </location>
您的 IP和您的
x-forwarded-for
IP 都必須是允許的條目才能允許請求。啟用“代理模式”後,伺服器首先檢查所提供的 IP(代理的 IP)是否被允許。如果是這樣,它然後獲取最後一個
x-forwarded-for
IP 並檢查是否允許,並遞歸x-forwarded-for
IP 列表並檢查每個 IP 是否被允許。所有都必須被允許,否則請求被阻止。如果不允許代理 IP *,*則請求被阻止,
x-forwarded-for
根本不考慮;您必須信任請求的來源才能嘗試並信任請求中的內容。在 IIS.net 上的這篇 Wade Hilmo 文章中以更長的形式(和更好的術語)解釋了它。