IIS 8.5 如何使用 URL Rewrite 设置反向代理
IIS 8.5 How to set up reverse proxy with URL Rewrite
我正在尝试让一个 (public) 服务器 A 充当另一个(私有)服务器 B 的反向代理。服务器 B 对服务器 A 可见。即,如果我在服务器 A 上我在浏览器中输入:
https://serverb.us/folder/application
我看到了申请。我想要它,以便如果用户键入:
https://servera.us/folder/application
他看到服务器 B 上的 Web 应用程序。这可能吗?
我尝试通过
在 IIS 管理器中添加重写规则
URL 重写 > 添加规则 > 反向代理 >
我将入站规则更改为完全匹配:https://servera.us/folder/application(忽略大小写)
重写 URL:https://serverb.us/folder/application(取消选中追加查询字符串)
但它什么也没做。我错过了什么吗?
根据你的描述,我建议你可以尝试使用下面的url重写规则:
<rewrite>
<rules>
<rule name="Reverse Proxy to b" stopProcessing="true">
<match url="^folder/application/(.*)" />
<action type="Rewrite" url="https://serverb.us/folder/application/{R:1}" />
</rule>
<rewrite>
原来是身份验证的问题。我必须确保两个应用程序在 IIS 管理器中具有相同的身份验证设置(单击 IIS 管理器中的 Web 应用程序或文件夹,然后双击身份验证)
我正在尝试让一个 (public) 服务器 A 充当另一个(私有)服务器 B 的反向代理。服务器 B 对服务器 A 可见。即,如果我在服务器 A 上我在浏览器中输入:
https://serverb.us/folder/application
我看到了申请。我想要它,以便如果用户键入:
https://servera.us/folder/application
他看到服务器 B 上的 Web 应用程序。这可能吗?
我尝试通过
在 IIS 管理器中添加重写规则URL 重写 > 添加规则 > 反向代理 >
我将入站规则更改为完全匹配:https://servera.us/folder/application(忽略大小写)
重写 URL:https://serverb.us/folder/application(取消选中追加查询字符串)
但它什么也没做。我错过了什么吗?
根据你的描述,我建议你可以尝试使用下面的url重写规则:
<rewrite>
<rules>
<rule name="Reverse Proxy to b" stopProcessing="true">
<match url="^folder/application/(.*)" />
<action type="Rewrite" url="https://serverb.us/folder/application/{R:1}" />
</rule>
<rewrite>
原来是身份验证的问题。我必须确保两个应用程序在 IIS 管理器中具有相同的身份验证设置(单击 IIS 管理器中的 Web 应用程序或文件夹,然后双击身份验证)