例如,此網址是http://stackoverflow.com/questions/ask
,而不是像http://stackoverflow.com/questions/ask.aspx
之類的東西。我怎樣才能做到這一點?如何擺脫URL中的實際文件名?
3
A
回答
0
添加引用到組件System.Web.Routing,然後將以下內容添加到您的global.asax文件中:
protected void Application_Start(object sender, EventArgs e)
{
RegisterRoutes(RouteTable.Routes);
}
public static void RegisterRoutes(RouteCollection routes)
{
routes.MapPageRoute("",
"questions/ask/{question}",
"~/questions/ask.aspx");
}
-1
這種情況發生在Web服務器實現處理程序時,它將給定的URL模式映射到實際的內容以提供服務。
在這個網站,它可能來自使用MVC框架(猜測)。
在Windows IIS可以使用http://www.iis.net/download/URLRewrite
1
您可以使用此技巧和工具:
http://forums.iis.net/t/1150350.aspx - IIS解決方案
http://forums.asp.net/t/979581.aspx - ASP.NET 404頁面的解決方案
0
如果你的問題不是特定於aspx頁面,你可以在任何運行apache的web服務器上使用.htaccess文件來做到這一點(以及mod_rewrite - 但幾乎所有這些)。
查看本網站上有關.htaccess的各種問題或查看大量簡單的在線教程。
基本上你可以把一個特殊的文件.htaccess
在你希望的根目錄下受到影響,基本上說
相反的about_us/details.php
你可以使用about_us/details
這是一個非常簡單的例子
RewriteEngine on
Options +FollowSymlinks
RewriteRule ^questions/ask ../questions/ask.aspx [L]
相關問題
- 1. 擺脫文件擴展名?
- 2. 如何擺脫appname.vshost.exe文件?
- 3. 如何擺脫Git中的.ignore文件?
- 4. 如何擺脫URL中的「類別」hexo
- 5. 如何擺脫Joomla URL中的日期?
- 6. ant.properties擺脫文件
- 7. Magento中的URL路由:如何擺脫URL中的index.php
- 8. 擺脫文件名*連續*期間
- 9. 如何擺脫INDEXING網站文件夾
- 10. 擺脫文件:/// c://在HTML文件中
- 11. 如何擺脫doxygen配置文件中的文件引用?
- 12. 重寫規則,將擺脫我的URL中的.php文件擴展名
- 13. 如何擺脫html/css中兩個div之間的髮際線?
- 14. 如何從重疊的svg形狀中擺脫髮際線
- 15. 擺脫Netbeans NavData文件
- 16. cakephp URL擺脫/ app/webroot
- 17. 擺脫文件中不需要的行
- 18. 擺脫下載文件的文件名下劃線
- 19. 無法擺脫CodeIgniter中的url index.php
- 20. 需要擺脫url中的lang版本
- 21. 如何擺脫文本文件中的特殊字符? (* nix)
- 22. 如何擺脫libthread_db
- 23. 如何擺脫IBAction?
- 24. 如何擺脫SimpleAdapter
- 25. 如何擺脫EXC_BAD_ACCESS
- 26. 如何擺脫xmlns =「」?
- 27. 如何擺脫aspx.designer.cs?
- 28. 如何擺脫Nuget
- 29. 如何擺脫java.lang.OutOfMemoryError?
- 30. 如何擺脫TLE?
[ASP.NET路由](http://msdn.microsoft.com/zh-cn/library/cc668201.aspx)使您可以使用不必映射到Web站點中特定文件的URL 。由於URL不必映射到文件,因此可以使用描述用戶操作的URL,因此用戶更容易理解。 – bzlm
是asp.net路由一個通用的功能,或特別是MVC的組件(或者甚至很重要) –
@Gabriel,因爲使用古老的和不推薦的解決方案的答案已被接受,我會說它並不重要。 :) – bzlm