2014-04-01 68 views
3

我已將網站升級到較新的mvc版本的asp.net。它已經完成了,但是我不確定如何將以aspx結尾的舊頁面請求重定向到新的URL。將以.aspx結尾的所有較舊的URL重定向到某個URL

我如何可以重定向的所有頁面請求用的.aspx到主頁URL像www.somedomain.com/

結束,我想利用重寫模塊。

+0

嘛 - 路由並不是一件簡單的事情,只是解釋/爲你做,所以 - 你有什麼到目前爲止做了什麼,你可以展示什麼代碼?另請看看這裏的一些介紹:http://msdn.microsoft.com/en-us/library/cc668201.aspx –

+0

你想重定向每個請求,讓我們說http://www.somedomain.com/Users .aspx到http://www.somedomain.com/Users或http://www.somedomain.com/? – saintedlama

回答

9

爲了使用重寫模塊將所有以aspx結尾的內容重定向到擴展少的URL,您必須首先安裝URL重寫模塊。最好是用Web Platform Installer

一旦安裝添加以下部分,將<system.webServer>節在web.config中安裝URL重寫模塊:

<rewrite> 
    <rules> 
     <rule name="Redirect to extensionless URL" patternSyntax="Wildcard" stopProcessing="true"> 
      <match url="*.aspx" /> 
      <action type="Redirect" url="{R:1}" redirectType="Found" /> 
     </rule> 
    </rules> 
</rewrite> 

此節規定的任何URL匹配模式* .aspx將被重定向(302)到擴展少的URL等效。例如,對/Users.aspx的請求將被重定向到/Users

如果你想網址重定向所有的.aspx一些域名,你會改變行動在:

<action type="Redirect" url="http://www.somedomain.com" redirectType="Found" /> 

使用302重定向是不是從SEO的角度來看理想,所以我會建議測試用的情況下,302重定向,一切都會按所需切換到一個永久重定向使用操作:

<action type="Redirect" url="{R:1}" redirectType="Permanent" /> 
相關問題