您现在的位置: 万盛学电脑网 >> 程序编程 >> 网络编程 >> asp编程 >> 正文

ASP生成html静态页面的方法

作者:佚名    责任编辑:admin    更新时间:2022-06-22

 原理:通过浏览器传送变量,如

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页直接生成静态页,将会节省很多。