2016-11-09 86 views
0

如何在IIS7中重定向(301)? 我正在嘗試使用web.config中的重寫規則將鏈接表單'domainA.com/link_A'重定向到'domainB.com/link_B'。我如何爲選定的鏈接做到這一點? 是對的?IIS 7將域301重定向到域B

<rule name="redirect" stopProcessing="true"> 
<match url=".*" /> 
<conditions> 
<add input="{HTTP_HOST}" pattern="^domainA.com/link_A$ /> 
</conditions> 
<action type="Redirect" url="http://www.domainB.com/link_B{R:0}" redirectType="Permanent" /> 
</rule> 

回答

0

您需要將「link_A」部分移動到該URL,因爲HTTP_HOST只與域名匹配。所以你的規則應該看起來像這樣

<rule name="rewriting" stopProcessing="true"> 
    <match url="link_A" /> 
    <conditions> 
     <add input="{HTTP_HOST}" pattern="^domainA.com$" /> 
    </conditions> 
    <action type="Redirect" url="http://www.domainB.com/link_B{R:0}" redirectType="Permanent" /> 
</rule> 
+0

謝謝你的回答。我想知道什麼是重寫〜400鏈接的最佳方法。我應該在web.config中使用400次這個代碼,或者它是更優化的方式來做到這一點? – RayJek

+0

如果在DomainA和DomainB上的鏈接之間存在某種模式,則可以在重定向URL中使用規則變量。實際上,在我的答案中發現了一個小錯誤,它使用了這個錯誤。由於「{R:0}」部分會將匹配的網址插入重定向網址,因此它不會重定向到www.domainB.com/link_B,而是實際重定向到www.domainB.com/link_Blink_A。 –

+0

爲什麼被接受後未接受答案? –