Web.config 重定向

Posted

技术标签:

【中文标题】Web.config 重定向【英文标题】:Web.config redirect 【发布时间】:2019-03-25 08:29:48 【问题描述】:

我最近重新设计了我们的网站并将其移至新域。我需要做一些重定向,但在让它正常工作时遇到了一些问题。

我有超过 200 个页面需要重定向,我更愿意在一个规则中完成,而不是 200 个。

这是我需要重定向的示例:

www.OldSite.net/store/index.php/商店_location

重定向到:

www.NewSite.com/store/page.aspx?code=商店

.net url 的粗体部分是我试图在新.com url 中查询和使用的部分。我很难弄清楚如何在 web.config 中使用通配符 R:xsC:xs

我已经能够通过使用以下规则使单个重定向起作用:

条件logicalGrouping="MatchAny" trackAllCaptures="false"

添加输入="HTTP_HOSTREQUEST_URI" pattern="www.OldSite.net/store/index.php/store_location" /

/条件

action type="重定向" url="https://www.NewSite.com/store/page.aspx?code=store" redirectType="永久"/*

但我希望有一种更简单的方法,只需一条规则而不是 200 条以上。

【问题讨论】:

【参考方案1】:

通过一堆试验和错误(主要是错误:D),我终于能够获得一个规则来为我完成所有重定向。如果这对其他人有帮助,这是我使用的规则:

rule name="redirect rule" stopProcessing="true"

匹配 url="(.)/(.)_" /

条件logicalGrouping="MatchAny" >trackAllCaptures="false"

添加输入="HTTP_HOSTREQUEST_URI" 模式="www.OldSite.net/store/index.php/" /

/条件

action type="Redirect" url="https://www.NewSite.com/store/page.aspx?code=R:2" redirectType="Permanent" /

/规则

【讨论】:

以上是关于Web.config 重定向的主要内容,如果未能解决你的问题,请参考以下文章

多个 web.config 重定向规则

如何通过 web.config 将 http 重定向到 https 并将 www 重定向到非 www?

Web.Config (IIS) 中的简单 301 重定向

web.config 将非 www 重定向到 www

asp.net 多个域名重定向,在web.Config中配置

重定向 web.config IIS 8