You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

IIS结合ARR实现动态转发反向代理的问题求助

IIS+ARR反向代理动态转发问题解决

问题背景

需要用IIS搭配ARR实现反向代理,将http://Proxyserver/Targetcomputer/API_String格式的请求转发到http://Targetcomputer/API_String。配置URL重写规则后无法实现动态跳转,Web服务器仅能访问本地资源,测试请求返回404,日志显示规则匹配失败。

当前web.config中的重写规则:

<rule name="Test" enabled="true" stopProcessing="true">
      <match url="^([^/]+)/([^/]+)" />
      <action type="Rewrite" url="http://{R:1}/{R:2}" LogRewrittenUrl="true" />
</rule>

失败日志关键信息:测试请求http://localhost:80/www.ibm.com的URL部分为www.ibm.com,匹配模式^(.*)/(.*)返回Matched: false。

解决方法

1. 修正URL匹配规则

现有规则要求URL必须包含至少一个斜杠来分割目标主机和API路径,但测试请求www.ibm.com无斜杠导致匹配失败。若需同时支持带API路径和不带的情况,调整匹配模式:

<rule name="Test" enabled="true" stopProcessing="true">
  <match url="^([^/]+)(?:/(.*))?$" />
  <action type="Rewrite" url="http://{R:1}/{R:2}" LogRewrittenUrl="true" />
</rule>

该模式可匹配两种场景:

  • Targetcomputer/API_String → {R:1}=Targetcomputer,{R:2}=API_String
  • www.ibm.com → {R:1}=www.ibm.com,{R:2}为空,转发到http://www.ibm.com/

2. 确认ARR代理功能启用

  • 打开IIS管理器,检查Application Request Routing Cache已安装并启用。
  • 进入ARR的「服务器代理设置」,勾选「启用代理」,保持默认转发设置即可。
  • 在服务器上用ping Targetcomputer或curl http://Targetcomputer测试,确保能正常访问目标地址。

3. 添加服务器变量配置

为正确传递请求头、避免目标服务器拒绝请求,需添加服务器变量设置:

<rule name="Test" enabled="true" stopProcessing="true">
  <match url="^([^/]+)(?:/(.*))?$" />
  <action type="Rewrite" url="http://{R:1}/{R:2}" LogRewrittenUrl="true" />
  <serverVariables>
    <set name="HTTP_X_FORWARDED_HOST" value="{HTTP_HOST}" />
    <set name="HTTP_X_FORWARDED_FOR" value="{REMOTE_ADDR}" />
  </serverVariables>
</rule>

随后在IIS的URL重写模块中,进入「查看服务器变量」,添加HTTP_X_FORWARDED_HOST和HTTP_X_FORWARDED_FOR并允许修改。

4. 检查权限与防火墙

  • 确认应用程序池身份(如DefaultAppPool)具备发起外部HTTP请求的权限。
  • 检查服务器防火墙,允许向外的HTTP/HTTPS请求到目标客户端地址。

验证测试

用标准格式请求http://Proxyserver/Targetcomputer/API_String测试,查看失败请求日志是否显示规则匹配成功,同时检查ARR代理日志确认转发请求已发送到目标主机。

内容的提问来源于stack exchange,提问作者Andreas Schmitz

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.18 12:00:55