[NET]如何去掉網址中的.aspx副檔名?(以FriendlyUrls為例)

[NET]如何去掉網址中的.aspx副檔名?(以FriendlyUrls為例)

以資訊安全及SEO優化的角度考量,會希望網址呈現出來是乾淨沒有其他不必要的資訊,
像是程式副檔名就是非常多餘的資訊,這裡介紹使用FriendlyUrls把程式副檔名去掉的方式。

先看一下使用前,網址列有顯示.aspx的副檔名:

安裝FriendlyUrls套件

開啟管理NuGet,輸入FriendlyUrls關鍵字進行搜尋,可以找到下圖第一筆資料,按下「安裝」。

詢問安裝在哪個專案時,選擇WEB程式的專案即可:

按下「我接受」即開始安裝:

程式設定

安裝完成後,在App_Start資料夾自動長出RouteConfig.cs程式,打開它並將程式內容複製起來

開啟專案的Global.asax,將上圖程式內容貼到Application_Start中(如下圖),
並在藍色波浪上按右鍵-解析-using Microsoft.AspNet.FriendlyUrls

在複製進來的程式上一行加上 var routes = System.Web.Roting.TouteTable.Rotes; 這行程式:

預覽

完成上面安裝及設定,直接預覽網頁就可以看到執行效果,且全網站的網頁都會套用,不用再一一設定,使用上真的很方便。
即使網址有帶參數也可以用一般的方式使用,完全不會影響: