首页 > 解决方案 > Windows IIS 重定向另一个站点

问题描述

我在 IIS 中有两个名为 test1 和 test2 的站点
我想要http://update.xxx.com/ assıgn to test1 http://update.xxx.com/test2 assıgn to test2

我该怎么做?我尝试了 url 重写,但它对我不起作用

标签: windowsiiswindows-server-2012-r2windows-server

解决方案


您收到 404.4 错误了吗?我有两个网站 site1 和 site2 在此处输入图像描述

1.如果你想从外部网络通过update.xxx.com访问你的test1。然后您必须购买一个公共域并将其映射到您服务器的公共 IP 地址。

如果您的服务器只是托管在 Active Directory 中,那么您需要创建一个名为xxx.com的主正向查找区域,然后为您的服务器的 A 记录 (HOST) 添加 CNAME 更新。那么它的 FQDN 将是update.xxx.com。您还需要为您的站点 2 注册一个 CNAME,例如 update2.xxx.com

2.你需要为你的site1设置IIS绑定。 在此处输入图像描述

  1. 为您的站点2 创建绑定。请确保 site1 和 site2 都可以从域名访问。

在此处输入图像描述

4.请为您的 IIS 服务器安装应用程序请求路由。 https://www.iis.net/downloads/microsoft/application-request-routing

5.打开IIS管理器服务器节点->应用请求路由缓存->服务器代理设置->启用代理。

6.在 site1 中创建一个 URL 重写,如下所示:

  <rule name="rewrite" enabled="true" stopProcessing="true">
                    <match url="^test2(.*)" />
                    <conditions>
                        <add input="{HTTP_HOST}" pattern="update.xxx.com" />
                    </conditions>
                    <action type="Rewrite" url="http://update2.xxx.com{R:1}" />
                </rule>

现在,当您访问 update.xxx.com/test2 时,它将转到 site2。

如果您没有多个域,那么您可以在绑定中与不同的端口共享相同的 IP。


推荐阅读