2011-05-12 83 views
1

我有一個網站,有別名:301重定向ASP.NET IIS

site1.com

site2.com

site3.com

但他們都是一樣的網站。

我需要asp.net的規則,這將允許site3.com & site2.com重定向到www.site1.com與狀態301

回答

2

我建議使用URL重寫模塊在IIS中重定向這些請求。這樣的事情可能工作(儘管這可能需要的調整)...

<rewrite> 
    <rules> 
    <rule name="CanonicalHostNameRule1" stopProcessing="true"> 
     <match url="site?.com" /> 
     <conditions> 
     <add input="{HTTP_HOST}" pattern="^www.site1.com$" negate="true" /> 
     </conditions> 
     <action type="Redirect" url="http://www.site1.com/" redirectType="Permanent"/> 
    </rule> 
    </rules> 
</rewrite> 

編輯 - 忘了包括redirectType屬性

+1

Xeka需要301重定向(可能是SEO的原因),這是不是:) – rciq 2011-05-12 13:34:45

+0

@rciq - 會你在乎添加更多的細節?我承認我忘了包含我剛添加的redirectType。當我使用這個時,IIS向我發送一個301. – FlyingDeveloper 2011-05-12 13:44:13

+0

此外,它被添加到web.config中,這可以使@Xeka在他的環境中更容易實現。 – FlyingDeveloper 2011-05-12 13:49:25

0

我想一個更好的選擇是在IIS中設置這些東西。在IIS7中,您可以爲不需要的域創建站點(或甚至是虛擬目錄),然後在「HTTP重定向」部分中設置目標和所需的HTTP狀態代碼。

如果由於某種原因,你無法通過IIS做這個嘗試編碼解決方案,因此搜索: https://stackoverflow.com/search?q=asp.net+301+redirect

+0

我使用託管,但沒有訪問IIS。我只能編輯asp腳本:( – 2011-05-12 13:44:06

+0

然後,您應該嘗試FlyingDeveloper的解決方案(他現在添加了重定向類型)。僅作爲最後手段尋求編碼解決方案。 – rciq 2011-05-12 14:32:18