我注意到,stackoverflow.com在他們的頁面上沒有文件擴展名。我如何使用aspx網站做到這一點?如何製作不帶文件擴展名的ASPX網頁?
回答
這些URL實際上並不指向文件。他們使用URL重寫規則將URL轉換爲數據庫查詢並將輸出反饋回指定頁面(其URL不顯示)。
編輯:對於澄清 SO使用MVC,所以該URL指向一個特定的控制器動作(具有或沒有參數,取決於頁)。該動作運行一些代碼來獲取數據或其他內容,並將其傳遞給相應的視圖,該視圖基本上是一個填充動作提供的信息並呈現頁面的html模板。
他們使用MVC
下面是斯科特·格思裏一個偉大的文章:
http://weblogs.asp.net/scottgu/archive/2007/02/26/tip-trick-url-rewriting-with-asp-net.aspx
它涵蓋了所有的場景:在IIS 6,IIS7,使用第三方URL重寫工具等
堆棧溢出使用ASP.NET MVC,它可以乾淨地清理URL。
基本上你需要的是一些需要乾淨的URL,然後將它映射到一個標準的.NET URL並傳遞額外的'目錄'作爲參數的東西。例如將/ blog/post-no-one改寫爲/blog.aspx?id=post-no-one。
新的IIS有,如果你想與傳統的ASP.NET做在重寫插件會爲你做這一點:
或者您也可以通過重寫HTTP模塊和做滾你自己在那裏重寫。這裏是一個複雜的例子:
由於幾個人都提到,所以使用隨MVC路由引擎的網址。他們實際上已經通過CodePlex提供了這些代碼,因此您可以在基於webforms的ASP.NET網站中使用它。
菲爾哈克對如何做到這一個很好的總結:
它包括樣品,鏈接等,應該在讓你開始有幫助的。
如果你仍然想使用ASP.Net而不使用MVC路由(MVC很棒,btw),你可以使用HTTP Handler來路由請求。
http://msdn.microsoft.com/en-us/library/ms227675(v=vs.100).aspx
- 1. 沒有aspx文件擴展名的ASP.NET網頁
- 2. .NET網站如何隱藏文件的.aspx擴展名?
- 3. 如何製作帶有.jsf擴展名的JSF 2.0頁面?
- 4. 沒有文件擴展名的網頁
- 5. 如何忽略不帶擴展名的文件名?
- 6. 不帶擴展名隨機文件{1,2 ...}與擴展
- 7. 使用自定義文件擴展名aspx頁面
- 8. 製作無最終文件擴展名的頁面
- 9. 搜索帶擴展名的文件
- 10. 帶擴展名的文件夾
- 11. 如何將不帶擴展名的網址重定向到.php?
- 12. 如何製作沒有文件擴展名的iTunesArtwork圖像?
- 13. 使用webForm名稱以.aspx擴展名的文件下載
- 14. 如何從文本文件中提取帶.txt擴展名的文件名?
- 15. 獲取文件名不帶擴展名的Python
- 16. 不帶擴展名術語的文件名
- 17. 獲取不帶擴展名的文件名,textmade包編輯器
- 18. 我如何製作一個帶有.html擴展名的文件的歡迎頁面
- 19. 如何刪除帶擴展名的多個文件夾? (BATCH FILE)
- 20. 如何導出帶有XLS擴展名的HTML文件?
- 21. 使用CMake獲取目標文件名,不帶擴展名
- 22. 文件名不帶擴展名在bash for循環
- 23. 如何更改文件的擴展名?
- 24. 如何查找文件的擴展名?
- 25. 如何獲得在網址中沒有擴展名的在線文件的文件擴展名
- 26. 從URL和帶文件擴展名獲取文件名
- 27. 文件擴展名
- 28. 文件擴展名
- 29. .htaccess網址:使用文件擴展名?
- 30. 查找文件夾中的圖片不帶擴展名
嗯。有點。它實際上調用一個控制器操作方法,它可能會執行一個數據庫查詢並呈現與該url相關的特定視圖。 – tvanfosson 2009-07-14 20:29:00