我是IIS URL重写Rule Regex并在这里寻求帮助的新手。
这是一个Sitecore网站,该网站是在ASP.NET MVC中构建的。我有一个域,即www.xyz.com与另一个域合并,即www.abc.com。我有两个www.xyz.com/test-> www.abc.com/test1的1-1映射。www.xyz.com/xx的所有内部页面都将使用www.abc.com/foo映射,除了www.xyz.com
之外- 我目前陷入了我的状态1(重定向www.xyz.com/主页上的第三方URL?2(同时使用www.abc.com/internal页面保留www.xyz.com/internal页面的1-1映射
我正在使用IIS URL重写规则将www.xyz.com的域重定向到www.abc.com,并寻求使用第三方页面的主页重定向的其他帮助
预先感谢!
您只需要两个不同的重定向规则,第一个规则将检查根域并重定向到第三方URL,第二个规则将检查内部页面并重定向到内部页面新域
它看起来像这样
<rule name="redirect root to third party" stopProcessing="true">
<match url="^$" ignoreCase="true" />
<conditions logicalGrouping="MatchAll">
<add input="{HTTP_HOST}" pattern="(www.)?xyz.com$" />
</conditions>
<action type="Redirect" redirectType="Permanent" url="<third party url here>" />
</rule>
<rule name="redirect to new domain" stopProcessing="true">
<match url="/(.*)" />
<conditions>
<add input="{HTTP_HOST}" pattern="^(www.)?xyz.com$" />
</conditions>
<action type="Redirect" url="http://<new domain>/{R:1}" redirectType="Permanent" />
</rule>
p.s:在第二个规则中,请检查/ - 我没有自己测试过该规则,在目标网址中可能会引入额外的斜杠或删除斜线,无论您是什么都可以修复它。这里的要点是,您需要两个单独的规则一个来检查确切的域之后,并将其重定向到第三方,而Sub页面重定向的另一个规则