頁面靜態化的方法

2021-09-08 21:05:32 字數 3638 閱讀 3919

-:通過404錯誤

code1//

頁面靜態化的思路23

//首先得捕獲404錯誤4//

跳轉到相應的aspx頁面5//

對這個aspx頁面進行靜態化 並在另一目錄中生成html檔案6//

跳轉到該html文最後可以通過微軟自帶的urlrewrite設定相應的正規表示式78

9string

htmlfilepath 

=string

.empty;

//當前要轉到的靜態頁面位址

1011

12protected

void

page_load(

object

sender, eventargs e)

13);

3031

filename 

=htmlfilenames[htmlfilenames.length -1

];32

fileprefix 

=filename.substring(

0, filename.lastindexof('.

')).tolower();

33#endregion

3435}36

else

3741

42//

獲取aspx頁面的html

43string

html 

=gethtml(htmlfilepath.replace(

"html", 

"aspx

"), 

"gb2312");

4445

//替換動態資訊

46html 

=html.replace(

"aspx", 

"html");

47htmlfilepath 

=htmlfilepath.substring(

0, htmlfilepath.length 

-filename.length);

4849

//建立html檔案

50createhtml(html, 

"html/"+

filename);

5152

//轉到html頁面

53response.redirect(htmlfilepath.tostring() +"

html/"+

filename);

545556}

5758

596061}

6263

64///

65///

獲取html** 從aspx中

66///

67///

68///

69///

70public

static

string gethtml(

string

url, 

string

code)

7182

83return

result;

8485}86

8788

//建立靜態網頁

89public

static

bool

createhtml(

string

htmlcode, 

string

name)

9099}

二:通過重寫ihttpmodule

應用程式開始請求時

16///

17///

18///

19private

void

2027

28///

29///

應用程式結束請求時

30///

31///

32///

33private

void

3437

3839

///40

///登出類

41///

42public

void

dispose()

434647}

4849

50///

51///

filterhtml 的摘要說明 (靜態化)

52///

53public

class

filterhtml : stream

5462

63public

override

bool

canread

6469}70

71public

override

bool

canseek

7277}78

79public

override

bool

canwrite

8085}86

87public

override

long

length

8893}94

95public

override

long

position

96101

set102

105}

106107

public

override

long

seek(

long

offset, seekorigin direction)

108111

112public

override

void

setlength(

long

length)

113116

117public

override

void

close()

118121

122public

override

void

flush()

123126

127public

override

intread(

byte

buffer, 

intoffset, 

intcount)

128131

132public

override

void

write(

byte

buffer, 

intoffset, 

intcount)

133141

else

142145

}146

147}

148149

在web.config中新增

ihttpmodule的實現url重寫

2008-06-21 06:18

原理,1。匹配訪問位址,

2. 在public void processrequest(httpcontext context)中

根據訪問規則用

context.server.execute(path);

執行請求頁面

中加入 :

頁面靜態化

隨著 的內容的增多和使用者訪問量的增多,無可避免的是 載入會越來越慢,受限於頻寬和伺服器同一時間的請求次數的限制,我們往往需要在此時對我們的 進行 優化和伺服器配置的優化。一般情況下會從以下方面來做優化 什麼是靜態化?純靜態 將php程式生成靜態的html檔案,儲存到伺服器的磁碟中。客戶端訪問的時候...

頁面靜態化

header content type text html charset utf8 set time limit 0 url str file get contents url var dump str die reg isu preg match all reg,str,arr var dump...

頁面靜態化

隨著 的內容的增多和使用者訪問量的增多,無可避免的是 載入會越來越慢,受限於頻寬和伺服器同一時間的請求次數的限制,我們往往需要在此時對我們的 進行 優化和伺服器配置的優化。一般情況下會從以下方面來做優化 1.為什麼要靜態化?一 加快頁面開啟瀏覽速度,因為無需連線資料庫 二 有利於搜尋引擎優化seo ...