基于同一 IIS 站点上的端口号更改行为

Changing behavior based on port# on same IIS site

假设我有请求通过两个不同的端口进入我的 IIS 站点。我可以将一个端口指向 www.website.com 而另一个端口指向 www.website.com/subfolder?

我正在尝试在没有多个网络服务器或站点的情况下进行一些地理路由。我将 AWS Route-53 设置为根据区域将流量发送到不同的负载均衡器,这些负载均衡器将从一个区域获取流量并发送到端口 2000,然后从另一个区域发送到端口 2001。www.website.com 的内容适合第一个区域,但 www.website.com/subfolder 是我们对另一个区域的内容。由于 AWS 可以根据位置为我拆分流量并发送到我选择的不同端口,是否可以使用它来将请求路由或重定向到同一站点上的不同文件夹?

编辑:我认为这样做的方法是使用 URL 重定向规则,条件是 {SERVER_PORT} 指定端口,如下所示:

匹配URL:匹配模式:.*

条件:{SERVER_PORT}匹配模式 2001

操作类型:重定向 URL:子文件夹/{R:0} 类型:永久 (301)

这应该将通过端口 2001 进入的所有内容路由到我的子文件夹,而不是其他端口上的流量,对吗?站点 CMS 已经安排了所有内容,因此 www.website.com/(anything) 和 www.website.com/subfolder/(anything) 将显示相同的内容,并根据区域进行更改。

所以这适用于我在上面指定的重定向规则。因为它打破了一些包含,比如样式表和诸如此类的东西,我还添加了一些带有 {PATH_INFO} 标签的排除项,并且需要有一个规则来排除已经包含子文件夹/的 URL,使用 {HTTP_URL} 条件,以防止重定向永远循环并为您提供 www.website.com/subfolder/subfolder/subfolder... 等等