999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于ASP.NET的頁面靜態化實現方法研究

2017-07-12 08:07:40生力軍
軟件導刊 2017年6期

生力軍

摘要: 針對動態頁面技術缺點,基于ASP.NET框架,提出了動態頁面靜態化的3種不同實現方案——真靜態、偽靜態、折中法。其中,偽靜態主要使用HttpModule攔截并修改HTTP請求中的URL地址;折中法主要使用HttpHandler結合靜態頁面模板生成并返回靜態頁面文件。給出了頁面靜態化實現方案選擇策略,即利用參數對動態網頁進行分類,不同的動態網頁采用不同的靜態化實現方案。

關鍵詞:ASP.NET;靜態化;HttpModule;HttpHandler;選擇策略

DOIDOI:10.11907/rjdk.171136

中圖分類號:TP301

文獻標識碼:A 文章編號:1672-7800(2017)006-0022-03

0 引言

動態網頁技術因其交互性強、數據刷新實時等特點[1],使網站開發效率和維護效率得到了大幅提升,目前互聯網上大部分網站都采用動態網頁技術構建,但其存在的問題卻不容忽視。

(1)對搜索引擎不夠友好。目前,很多搜索引擎不支持動態鏈接,在網絡上獲取頁面時,會優先獲取HTML靜態頁面內容。

(2)降低服務器性能。如果頁面訪問量比較大,動態頁面會頻繁與數據庫服務器進行交互,降低服務器性能。當前,在Web技術中,只有HTML的靜態頁面效率最高,對服務器性能要求最低[2]。

(3)暴露網站使用技術。如果動態頁面含有類似.jsp或.aspx這樣的擴展名,那么制作網站技術便一目了然,使黑客容易有針對性地對網站進行攻擊。

針對上述問題,有必要對動態頁面進行靜態化處理。目前,大多數網站都采用單一的靜態化實現方案,但是在某些情況下,服務器性能不但沒有提高,反而出現了下降。

實際上,對于不同類型的動態頁面,其靜態化實現方案應該有所區別,以最大限度提高服務器性能。本文首先分析了ASP.NET框架下不同頁面靜態化實現方案,然后將動態頁面進行分類,按照不同頁面的特點采用不同的靜態化實現方法。

1 實現方案

目前,實現頁面靜態化技術主要有以下幾種方案:

(1)真靜態。這種方案真正將動態頁面批量轉化成靜態頁面并存儲在服務器上。這種方案的優點是空間成本較低,不需要數據庫服務器。其缺點也很明顯:一旦網站規模較大,頁面的維護全部依靠手工操作,工作量巨大,維護困難。因此,這種方式只適合一些簡單的、更新頻率極低的介紹性頁面。

(2)偽靜態。這種方案其實并沒有真正將動態頁面轉化為靜態頁面,而是通過URL重寫技術,將動態頁面路徑重寫成.html靜態頁面路徑,主要實現搜索引擎友好性與網站安全性,而性能與單純的動態頁面沒有差異。這種方案適用于更新速度快而訪問量較小的動態頁面。

(3)折中法。這種方案在用戶訪問靜態頁面時,首先判斷靜態頁面在服務器上是否存在,如果存在就直接將靜態頁面返回給客戶端;如果不存在,則執行轉化操作生成靜態頁面,將該頁面發送給客戶端并保存在服務器上,下次再請求該頁面時則無需執行轉換操作。

以上3種方案在動態頁面靜態化實現中可結合使用。由于真靜態實現方式與靜態頁面制作方式相同,本文不再贅述。下面給出ASP.NET下偽靜態和折中法的實現方式。

1.1 偽靜態實現方式

偽靜態實現依賴對用戶請求的URL地址重寫。在ASP.NET框架下,可以使用框架中提供的HttpModule對HTTP請求進行攔截,對請求的地址進行驗證。如果符合重寫要求即將URL地址轉換成動態頁面形式,在服務器端對用戶請求進行重定向。具體實現步驟為:①新建一個類,實現IHttpModule接口,命名為StaticModule;②在新建類中定義一個EventHandler委托類型方法,命名為context_BeginRequest;③在context_BeginRequest方法中獲取用戶請求的原始URL;④對原始URL進行驗證(可使用正則表達式),如果驗證成功則生成真實的URL地址;⑤在服務器端將用戶請求重定向到真實的URL地址;⑥重寫IHttpModule接口中的Init方法,將context_BeginRequest方法綁定到請求處理之前觸發的事件中;⑦在web.config配置文件中注冊StaticModule。

1.2 折中法實現方式

折中法實現關鍵在于如何在靜態頁面不存在的情況下自動生成靜態頁面。在ASP.NET框架下,可以使用框架中提供的HttpHandler[3]對Http請求進行處理,提供關鍵參數,生成真實靜態頁面地址,判斷靜態頁面文件是否存在。如果存在,則直接返回靜態頁面文件,否則就生成靜態頁面文件。在生成靜態頁面文件時,為了提高生成效率,可以提前準備好靜態頁面模板,運用特殊符號標簽作為占位符,在生成頁面時只需對占位符進行替換即可。實現步驟:①制作靜態頁面模板Template.html,模板中用特殊符號(如:{$xxxx})作為內容占位符;②新建一個類,實現IHttpHandler接口,命名為StaticHandler;③重寫IHttpHandler接口中的ProcessRequest方法,在其中獲取用戶請求的URL地址,并將其轉換為真實的靜態頁面地址;④判斷上一步生成的真實靜態頁面是否存在,如果存在則直接將頁面返回,否則讀取靜態頁面模板Template.html,將模板中的占位符替換為真實數據,將文件另存為靜態頁面文件并將其返回給客戶端;⑤在web.config配置文件中注冊StaticHandler。

2 頁面靜態化實現方案選擇策略

從性能角度考慮,應該優先選擇真靜態和折中法進行頁面靜態化,特性越接近靜態頁面的動態頁面,其靜態化價值越大,即讀取頻率越高、更新頻率越低的頁面越適合靜態化。讀寫比[4]是定量參數,即進行一次靜態化操作后,下一次被靜態化前該網頁讀取的次數。網站可以根據實際需求設置讀寫比閾值(記為p)。當網頁讀寫比大于p時,靜態化對性能有提升,反之,盲目靜態化就會增加服務器的文件讀寫工作量,反而影響效率。

如圖1所示,對頁面進行分類,其中讀寫比函數f(x)=px為靜態化方案選擇的分界線,分界線之上的Ⅱ區頁面可以選擇折中法,其中寫頻率較低的Ⅰ區頁面可以考慮使用真靜態法;而分界線以下的Ⅲ區頁面就不適合頻繁讀寫的靜態網頁文件,從搜索引擎友好性和安全性考慮,更適合使用偽靜態法實現。

3 結語

本文分析了動態頁面靜態化實現方案,即真靜態、偽靜態和折中法,并給出了偽靜態和折中法在ASP.NET框架下的實現。偽靜態主要利用HttpModule對Http請求進行攔截,從而重定向頁面地址;折中法主要利用HttpHandler生成并返回真實的靜態頁面文件。3種實現方案各有特點,應根據不同的動態頁面選擇不同的實現方案。讀寫比是一個可供分類網頁的參數,讀寫比高的頁面可使用折中法實現,更新頻率極低的頁面可考慮使用真靜態法,而讀寫比低的頁面可使用偽靜態法實現。

參考文獻:

[1]趙志勤,朱永虎,林玉鳳.面向數據分析的Web頁面靜態化方法研究與實現[J].現代計算機,2014 (13):37-40.

[2]曾小燕,周統鋼.基于數據集成的頁面靜態化方法在政務網站的應用[J].電腦知識與技術,2014,10(15):3695-3696.

[3]沈陽.基于HttpHandler的頁面靜態化[J].數字技術與應用,2012 (1):50-51.

[4]白萬民,吳夫丹,白小軍.Web應用中的網頁靜態化技術研究[J].西安工業大學學報,2014,34(1):34-37.

(責任編輯:杜能鋼)

主站蜘蛛池模板: 亚洲男人的天堂久久精品| 97成人在线视频| 91久久夜色精品| 亚洲综合精品第一页| 亚洲女同一区二区| 无码久看视频| 四虎永久免费地址| 999国内精品视频免费| 亚洲国产日韩视频观看| 欧美成人看片一区二区三区| 99精品视频在线观看免费播放| 亚洲欧美日韩动漫| 日韩精品成人网页视频在线 | 国产微拍一区| 91久久精品国产| 日韩成人午夜| 97国产成人无码精品久久久| 亚洲经典在线中文字幕| 2020极品精品国产| 一本一本大道香蕉久在线播放| 亚洲婷婷六月| 色婷婷成人| 色九九视频| 日韩一级二级三级| 666精品国产精品亚洲| 四虎影视永久在线精品| 欧美久久网| 福利姬国产精品一区在线| 亚洲天堂视频在线观看免费| 一区二区影院| 国产十八禁在线观看免费| 亚洲精品成人7777在线观看| 色婷婷亚洲综合五月| 欧美精品在线观看视频| 伊人查蕉在线观看国产精品| 久久国产精品夜色| 在线日本国产成人免费的| 国产精品自在线拍国产电影| 青青草国产精品久久久久| av午夜福利一片免费看| 亚洲欧洲日产国产无码AV| 无码中文AⅤ在线观看| 黄色污网站在线观看| 国产网友愉拍精品| 精品一区二区三区视频免费观看| 亚洲欧洲一区二区三区| 国产欧美高清| 免费看av在线网站网址| 国产精品播放| 手机看片1024久久精品你懂的| 国产福利小视频在线播放观看| www.精品国产| 中文无码精品A∨在线观看不卡| 国产h视频在线观看视频| 亚洲男人的天堂久久香蕉网| 欧美一级黄色影院| 国产精品一区在线观看你懂的| 91色在线观看| www.91在线播放| 久久精品免费看一| 亚洲Va中文字幕久久一区| 2021国产精品自产拍在线| 国产精品自在线天天看片| 久久婷婷五月综合97色| 亚洲免费三区| 国产丝袜91| 国产人前露出系列视频| 国产精品成人久久| 国产欧美视频在线观看| 黄色网站在线观看无码| 伊人久久大香线蕉成人综合网| 亚洲swag精品自拍一区| 91成人免费观看在线观看| 日日摸夜夜爽无码| 亚洲日韩在线满18点击进入| 国产一级毛片在线| 欧美成人手机在线视频| 国产精品免费电影| 在线观看无码av免费不卡网站| 国产成人乱无码视频| 亚洲无限乱码| 久热re国产手机在线观看|