本教程將使用Visual Studio 2013手把手教你實現webform動態頁面的僞靜態。本教程配套的C#源碼工程可經過個人github下載。地址:https://github.com/shellcheng/ReWirteWebformgit
本文地址:WebForm僞靜態實現及ISAPI_REWRITE介紹程序員
本教程由技術愛好者成笑笑(博客:http://www.chengxiaoxiao.com/)寫做完成。若有轉載,請聲明出處。github
本教程內容:web
僞靜態介紹、做用shell
用代碼實現簡單的僞靜態數據庫
ISAPI_REWRITE組件的介紹及使用編程
1.僞靜態介紹、做用微信
1.1僞靜態介紹、做用網絡
1.1.1爲何要僞靜態app
在搜索引擎優化領域,靜態頁面的權重是大於動態頁面的權重的。例如index.aspx會大於index.aspx?id=1的權重。一般狀況下,動態頁面中?後面的參數是讀取數據庫內容顯示在前臺頁面上的。
很顯然若是id不一樣所展示的數據也是不一樣的。但搜索引擎會把全部的頁面例如:index.aspx?id=一、index.aspx?id=2等全部的動態頁面,認定爲同一個頁面index.aspx。爲了加強搜索引擎的友好度,提升收錄,咱們須要實現把動態內容靜態化。
1.1.2實現網頁靜態化
咱們很明顯能夠實現讀取數據庫內容根據模版生成對應id的靜態頁面。可是像淘寶京東等數以萬計的商品之下,所佔用的存儲是海量的,須要大量的硬盤存儲來存儲這些靜態網頁。這是很理想的情況,可是現實是沒法作獲得的。
因此僞靜態閃亮登場~~~
1.1.3什麼是僞靜態?
僞靜態就是咱們把之前的動態參數放入url中經過後臺邏輯,顯示對應的數據。說白了就是,把咱們之前的index.aspx?id=1的地址改成index-1.aspx頁面(具體的僞靜態的規則本身能夠隨便寫的,在這裏只是舉例子),把動態參數去掉。咱們在後臺寫相應的代碼實現讀取數據顯示。
2.用代碼實現簡單的僞靜態(WebFrom版本)
2.1目標:
訪問:index-1.aspx。顯示index.aspx?id=1的數據
2.2實現過程:
2.2.1:經過Visual Studio 2013新建一個web空項目。
2.2.2新建aspx頁面,並在後臺頁面添加如下代碼。
後臺處理id參數,查詢傳遞到前臺界面。
前臺頁面顯示數據:
至此咱們訪問index.aspx?id=1顯示以下:
2.2.3添加新項Global.asax。
咱們主要是重寫aspx頁面生命週期的Application_BeginRequest方法,獲取用戶訪問的地址,根據正則進行匹配。交由原頁面進行處理。
至此咱們訪問index-1.aspx能夠正確顯示
3.ISAPI_REWRITE組件的介紹及使用
組件下載地址:https://github.com/shellcheng/ReWirteWebform
使用步驟:
打開IIS---添加ISAPI篩選器-----64位機器須要添加32位和64位版本兩個篩選器。
在目錄下添加文件名爲.htaccess的文件:
寫入如下內容。RewirteRule後面的則是僞靜態的規則。
微信號:net4k8k(作(4k+8k)+月薪的程序員)
微信名稱:net知識分享
介紹:主要以發佈和分享.Net和安卓文章爲主,爭作全棧開發工程師,愛學習,愛挑戰,愛編程。
打造C#入門教程。總結本身已經習得的技術體系。分享到網絡。爲中國的軟件復興貢獻本身的一份力。
若有不恰當之處,還請指正。
做者:成笑笑
職業:應屆畢業生,找工做中。
本人聯繫方式:cxx@chengxiaoxiao.com
個人自媒體:
GitHub:https://github.com/shellcheng
My CnBlogs:http://www.cnblogs.com/happpytoo/
今日頭條:http://toutiao.com/m5443584213/
一點資訊:http://www.yidianzixun.com/home?page=channel&id=m21753
新浪微博:http://weibo.com/5706473282/
搜狐公衆平臺:http://mp.i.sohu.com/profile?xpt=NUJENDc2NjZENTIyMjlBRjk4QkIzRDczNTVFMUVFODBAcXEuc29odS5jb20=