redirect/重写域的一部分到不同的域

我有一个问题,我一直试图解决使用URL重写,但我不能让它按我想要的方式行事。 我有一些奇怪的情况。 我很抱歉,这个问题没有很好的格式,因为我必须迅速解决这个问题。

我有两个服务器在不同的位置。 两者都运行IIS。

一台服务器有一个默认网站,下面有许多networking应用程序。 他们正在使用

domain.com/Site1

domain.com/Site2

domain.com/Site3

另一台服务器有

new.domain.com/Site1

new.domain.com/Site3

我需要一个请求domain.com/Site1自动redirect到new.domain.com/Site1 – 但是,我不能让domain.com/Site2redirect到任何东西,它必须是在该特定的子应用程序的规则。 最重要的是,任何请求,如domain.com/Site1/Really/Long/Path....应该redirect到new.domain.com/Site1/Really/Long/Path....

我尝试了很多东西,这是我最近的尝试。 它似乎没有做任何事情,所以显然我没有得到什么:

 <rewrite> <rules> <rule name="Datacenter Redirect" patternSyntax="Wildcard"> <match url="*domain.com*" /> <action type="Redirect" url="new.domain.com/{R:0}" /> </rule> </rules> </rewrite> 

任何人都可以请指出我在正确的方向吗? 我对IIS很熟悉,但不能重写。

domain.com是IIS 7.5

我没有什么可以testing的,但应该是接近这个我相信…

 <rewrite> <rules> <rule name="Datacenter Redirect" patternSyntax="Wildcard"> <match url="domain.com/([_0-9a-z-]+)" /> <action type="Redirect" url="new.domain.com/{R:1}" /> </rule> </rules> </rewrite> 

那R:1可能需要是R:2,但我不确定。

那么你需要设置一个条件,只为Site1做这个,如果你不希望这个redirect与Site2发生,如果我正确地阅读你的问题。

https://docs.microsoft.com/en-us/iis/extensions/url-rewrite-module/creating-rewrite-rules-for-the-url-rewrite-module