萬盛學電腦網

 萬盛學電腦網 >> 網絡編程 >> asp編程 >> ASP生成html靜態頁面的方法

ASP生成html靜態頁面的方法

 原理:通過浏覽器傳送變量,如

http://127.0.0.1/shengcheng.asp?id=90

代碼:
if SaveFile("/new/"&id&".html","http://127.0.0.1/news.asp?id="&id&"") then 中

/new"&id&".html",是你生成的文件和路徑。http://127.0.0.1/news.asp?id="&id&""是asp的路徑
大家可以自己設置修改,其中 "&id&" 是讀取浏覽器的變量。網址改成你自己的。

使用方法,給你的文章列表添加一個連接,如 http://127.0.0.1/shengcheng.asp?id=90

90這個變量相信大家會調用吧,這樣就能在/new目錄下生成按照id排列的html文章了

shengcheng.asp文件如下:

<%   

 

Dim id   

 

id = Request("id")   

 

%>   

 

<%   

 

if SaveFile("/new/"&id&".html","http://127.0.0.1/news.asp?id="&id&"") then   

 

Response.write "已生成"   

 

else   

 

Response.write "沒有生成"   

 

end if  

 

function SaveFile(LocalFileName,RemoteFileUrl)   

 

Dim Ads, Retrieval, GetRemoteData   

 

On Error Resume Next   

 

Set Retrieval = Server.CreateObject("Microso" & "ft.XM" & "LHTTP") '//把單詞拆開防止殺毒軟件誤殺  

 

With Retrieval   

 

.Open "Get", RemoteFileUrl, False, "", ""   

 

.Send   

 

GetRemoteData = .ResponseBody   

 

End With   

 

Set Retrieval = Nothing   

 

Set Ads = Server.CreateObject("Ado" & "db.Str" & "eam") '//把單詞拆開防止殺毒軟件誤殺  

 

With Ads   

 

.Type = 1   

 

.Open   

 

.Write GetRemoteData   

 

.SaveToFile Server.MapPath(LocalFileName), 2   

 

.Cancel()   

 

.Close()   

 

End With   

 

Set Ads=nothing   

 

if err <> 0 then   

 

SaveFile = false   

 

err.clear   

 

else   

 

SaveFile = true   

 

end if   

 

End function   

 

%> 

 

隨著網站訪問量的加大,每次從數據庫讀取都是以效率作為代價的,很多用ACCESS作數據庫的更會深有體會,靜態頁加在搜索時,也會被優先考慮。互聯網上流行的做法是將數據源代碼寫入數據庫再從數據庫讀取生成靜態面,這樣無形間就加大了數據庫。將現有的ASP頁直接生成靜態頁,將會節省很多。

copyright © 萬盛學電腦網 all rights reserved