itE-SPACE: normal; FLOAT: none; LETTER-SPACING: normal; COLOR: rgb(34,34,34); WORD-SPACING: 0px; -webkit-text-stroke-width: 0px">著網(wǎng)站訪問量的加大,每次從數(shù)據(jù)庫讀取都是以效率作為代價(jià)的,很多用ACCESS作數(shù)據(jù)庫的更會深有體會,靜態(tài)頁加在搜索時(shí),也會被優(yōu)先考慮。互聯(lián) 網(wǎng)上流行的做法是將數(shù)據(jù)源代碼寫入數(shù)據(jù)庫再從數(shù)據(jù)庫讀取生成靜態(tài)面,這樣無形間就加大了數(shù)據(jù)庫。將現(xiàn)有的ASP頁直接生成靜態(tài)頁,將會節(jié)省很多。
下面的例子是將、index.asp?id=1/index.asp?id=2/index.asp?id=3/這三個(gè)動(dòng)態(tài)頁面,分別生成ndex1.htm,index2.htm,index3.htm存在根目錄下面:
Code:
<%
dim strUrl,Item_Classid,id,FileName,FilePath,Do_Url,Html_Temp
Html_Temp="<UL>"
For i=1 To 3
Html_Temp = Html_Temp&"<LI>"
Item_Classid = i
FileName = "Index"&Item_Classid&".htm"
FilePath = Server.MapPath("/")&""&FileName
Html_Temp = Html_Temp&FilePath&"</LI>"
Do_Url = "http://"
Do_Url = Do_Url&Request.Servervariables("SERVER_NAME")&"/main/index.asp"
Do_Url = Do_Url&"?Item_Classid="&Item_Classid
strUrl = Do_Url
dim objXmlHttp
set objXmlHttp = Server.CreateObject("Microsoft.XMLHTTP")
objXmlHttp.open "GET",strUrl,false
objXmlHttp.send()
Dim binFileData
binFileData = objXmlHttp.responseBody
Dim objAdoStream
set objAdoStream = Server.CreateObject("ADODB.Stream")
objAdoStream.Type = 1
objAdoStream.Open()
objAdoStream.Write(binFileData)
objAdoStream.SaveToFile FilePath,2
objAdoStream.Close()
Next
Html_Temp = Html_Temp&"<UL>"
%>
<%
Response.Write ( "成功生成文件:" )
Response.Write ( "<BR>" )
Response.Write Html_Temp
%>
未經(jīng)允許不得轉(zhuǎn)載:445IT之家 » ASP生成靜態(tài)網(wǎng)頁的方法