.NET:使用web.config中的httpredirect从域和子文件夹重定向到新域,保留路径和查询字符串

马克·西摩

我正在尝试将域重定向设置为域迁移的一部分。我的警告是,我要重定向的站点位于更广泛域的子文件夹中。我还需要保留其余的路径和查询字符串。

我需要在web.config中设置重定向以实现以下目的:

我试过了:

<httpRedirect enabled="true" destination="https://www.domain1.com$V$Q" httpResponseStatus="Temporary" exactDestination="true" />

但这不会删除“ mysite”子文件夹。它重定向到https://www.domain2.com/mysite而不是https://www.domain2.com

我也尝试过创建重写规则,但是我无法弄清有效的输入和正则表达式。

TIA。

卡萨拉斯(Athanasios Kataras)

您可以在URL重写中使用两个规则:

<rule name="remove-my-site">
  <match url="^mysite/([/_0-9a-z-]+)"/>
  <action type="Rewrite" url="{R:1}"/>
</rule>
<rule name="domain1-to-domain2">
    <match url=".*" />
    <conditions logicalGrouping="MatchAny">
        <add input="{HTTP_HOST}" pattern="domain1.com" />
    </conditions>
    <action type="Redirect" url="http://www.domain2.com/{R:0}" />
</rule>

您不会使用httpRedirect做到这一点。它用于简单的重写。

您还可以查看“应用程序请求路由”文档,以使用IIS配置反向路由器。

我们可能错过的是这一步:

启用反向代理功能

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章