首页 > 解决方案 > 替换IIS中域URL的一个单词

问题描述

我将我的项目移动到一个新服务器(从 abc.com/eco 到 abc2.com/eco)并创建了一个 HTTP 重定向规则来将每个 abc.com/eco 请求重定向到 abc2.com/eco。这适用于 abc.com/eco 请求。

在此处输入图像描述

问题是,eco 之后的 URL 不会被重定向。

例如:abc.com/eco/departments/main.aspx?id=123

不重定向到

abc2.com/eco/departments/main.aspx?id=123

以下URL 重写规则也不起作用:

<rule name="Redirects to abc2.com" patternSyntax="ECMAScript" stopProcessing="true">

    <match url=".*" />

    <conditions logicalGrouping="MatchAny">

        <add input="{HTTP_HOST}" pattern="^abc.*(com|net)$" />

    </conditions>

    <action type="Redirect" url="http://abc2.com/{R:0}" />

</rule>

我查看了数十个问题,但都在询问子目录替换。

类似的问题但没有回答我的问题:

问题 1

问题2

标签: c#iisurl-rewritinghttp-redirect

解决方案


这条规则在我这边运行正常。

在测试具有长期永久重定向的新重写规则之前,您是否清理了缓存。

如果您没有清理浏览器缓存,您之前的 HTTP 重定向将继续将您的 URL 重定向到http://abc2/eco

在此处输入图像描述


推荐阅读