asp.net偽靜態配置備忘

來源:互聯網
上載者:User
總之,感覺網站的URL上面有參數是一件很彆扭的事情,一方面很容易被注入,另一方面,參數傳遞很容易泄露一些有用的資訊。

而這篇文章主要針對的是網站URL顯示的偽靜態化,這樣就拋棄了直接產生純靜態頁的麻煩,而且能夠很好的保護使用者隱私,同時網站安全性也會有一定效能的提升。

主要操作過程如下:

首先,我們需要一個微軟的URLReWriter組件,這裡的下載地址我給提供下:

http://download.microsoft.com/download/0/4/6/0463611e-a3f9-490d-a08c-877a83b797cf/MSDNURLRewriting.msi

然後就是建立一個網站,然後通過“添加引用”把這個dll檔案添加到項目中。

我建立的網站頁面是一個簡單的前台新聞發布系統,頁面如下:

然後就是列表頁面:

然後就是上面的標題為“3333333”的詳細資料顯示頁面,具體的顯示頁面為:

那麼針對這樣的頁面,我們來進行偽靜態化,首先是需要配置webconfig

如下圖所示:

要注意的就是其中的<LookFor></LookFor>和<SendTO></SendTO>節點,寫到LookFor節點中的URL路徑是對外公布的URL路徑,而SendTO節點中的URL路徑則是IIS進行解析的時候返回的真實的路徑。上圖中節點一部分就是只要是類似字母d後面跟數位都交給NewsListaspx帶參返回解析;而節點二部分就是只要是類似字母dd後面跟數位都交給NewsDetails.aspx帶參返回處理;而節點三就是把html請求頁面轉為aspx請求返回。

還需要在<HttpHandlers>節點下面添加如下模組:

這些設定好後,但是我們的IIS預設是不能夠直接解析html尾碼的(只要是沒添加),那麼就需要配置IIS,配置路徑如下:

開啟IIS—》右擊網站—》屬性—》切換到“主目錄”標籤—》點擊“配置”按鈕—》切換到“映射”標籤—》雙擊“.aspx”,在彈出的視窗中,複製“可執行檔”後面的字串—》單擊“添加”—》輸入拷貝的可執行檔路徑---à去掉“檢查檔案是否存在”勾選框,最後應用即可。

配置完成後,在你的網站上面,只要類似有

<a href="NewsList.aspx?ID=<%#Eval(“ID”)%>"><%#Eval("Name") %></a>

修改成

<a href= d<%#Eval("ID") %>.html"><%#Eval("Name") %></a>

並且把

<a href="NewsDetails.aspx?NewsID=<%#Eval(“ID”)%>"><%#Eval("Title") %></a>

修改成

<a href="dd<%#Eval("ID") %>.html"><%#Eval("Title") %></a>

最後利用iis訪問即可,設定完畢



聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.