原理:通過浏覽器傳送變量,如
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頁直接生成靜態頁,將會節省很多。