0

我试图让一个(公共)服务器 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 (取消选中附加查询字符串)

但它什么也没做。我错过了什么吗?

4

2 回答 2

0

问题原来是身份验证。我必须确保两个应用程序在 IIS 管理器中具有相同的身份验证设置(单击 IIS 管理器中的 Web 应用程序或文件夹,然后双击身份验证)

于 2019-01-30T20:01:00.827 回答
0

根据您的描述,我建议您可以尝试使用以下 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>
于 2019-01-30T07:31:27.867 回答