<rewrite url="~/Blog" to="~/Blog.aspx" processing="stop"/>
這是不行的,它只是似乎工作,如果我定義了一個替代的文件名,以及...我如何讓這個ASP.net幫助重寫簡單的URL
轉到:
http://www.mysite.com/Blog.aspx
<rewrite url="~/Blog" to="~/Blog.aspx" processing="stop"/>
這是不行的,它只是似乎工作,如果我定義了一個替代的文件名,以及...我如何讓這個ASP.net幫助重寫簡單的URL
轉到:
http://www.mysite.com/Blog.aspx
在IIS 6.0(Windows XP和Windows Server 2003中),你不能用通常的配置做到這一點。 IIS會查找一個文件擴展名來路由URL,以確定請求應該路由到哪個已安裝的引擎(傳統ASP,ASP.Net,PHP等)。當沒有擴展名時,IIS在相應的文件夾(虛擬或真實)中查找默認文檔,如default.aspx或index.htm等。
使用IIS 7,可以使用集成模式獲取您的行爲想。使用IIS 6,您仍然可以通過專門配置它來將所有URL路由到ASP.Net,而不管其擴展名。爲了提高效率,您可能需要對其進行優化,以便像圖像這樣的靜態文件不會路由到ASP.Net。如何做到這一點在這裏解釋:http://www.microsoft.com/technet/prodtechnol/WindowsServer2003/Library/IIS/5c5ae5e0-f4f9-44b0-a743-f4c3a5ff68ec.mspx?mfr=true
考慮使用MVC路由。如果您使用.NET 4,則更容易。所有你需要做的是參考System.Web.Routing
,然後在Global.asax文件,你可以做routes.MapPageRoute("Blog Route", "Blog", "~/Blog.aspx");
有用的參考資料:
_See [URL在ASP.NET重寫(http://msdn.microsoft.com/en-us/library/ms972974.aspx)_ –
你已經夠長在這裏學習如何格式化代碼,特別是XML。縮進4個空格。 – Oded
查看[Scott Guthrie的帖子](http://weblogs.asp.net/scottgu/archive/2007/02/26/tip-trick-url-rewriting-with-asp-net.aspx) –