企业与个人网络营销一站式服务商
网站建设 / SEO优化排名 / 小程序开发 / OA
0731-88571521
136-3748-2004
asp定时生成静态HTML的代码
信息来源:斌网网络   发布时间:2010-6-15   浏览:
复制代码 代码如下:
<% 
’判断是否要生成新的HTML 
if Application("cache_asptohtml_date")="" then 
Application.Lock 
Application("cache_asptohtml_date")=now() 
Application.Unlock 
Call aspTohtml 
Response.Redirect("index.html") 
end if 
if DateDiff("s", Application("cache_asptohtml_date"),Now)> 100 then ’比较上次更新时间与当前时间相差多少秒 
Application.Lock 
Application("cache_asptohtml_date")=now() 
Application.UnLock 
Call aspTohtml 
Response.Redirect("index.html") 
Else 
Response.Redirect("index.html") 
End if 

’获取当前目录! 
function getpath 
if Request.ServerVariables("SERVER_PORT")<>"80" then 
UserUrl = "http://"&Request.ServerVariables("SERVER_NAME")& ":" & Request.ServerVariables("SERVER_PORT")& Request.ServerVariables("URL") 
else 
UserUrl = "http://"&Request.ServerVariables("SERVER_NAME")& Request.ServerVariables("URL") 
end if 
getpath=left(UserUrl,InstrRev(UserUrl,"/")) 
end function 

sub aspTohtml 
’---------------------------------------------------------- 
’使用XMLHTTP生成静态首页的代码 
’Curl 为你的首页地址,确保你的空间支持FSO 
’----------------------------------------------------------- 
dim read,Curl,content 
Curl=getpath&"home.asp" 
read=getHTTPPage(Curl) 
if read<>"" then 
content=read 
Set Fso = Server.CreateObject("Scripting.FileSystemObject") 
Filen=Server.MapPath("index.html") 
Set Site_Config=FSO.CreateTextFile(Filen,true, False) 
Site_Config.Write content 
Site_Config.Close 
Set Fso = Nothing 
end if 
End sub 
Function getHTTPPage(url) 
dim http 
set http=Server.createobject("Microsoft.XMLHTTP") 
Http.open "GET",url,false 
Http.send() 
if Http.readystate<>4 then 
exit function 
end if 
getHTTPPage=bytesToBSTR(Http.responseBody,"GB2312") 
set http=nothing 
if err.number<>0 then err.Clear 
End Function 

Function BytesToBstr(body,Cset) 
dim objstream 
set objstream = Server.CreateObject("adodb.stream") 
objstream.Type = 1 
objstream.Mode =3 
objstream.Open 
objstream.Write body 
objstream.Position = 0 
objstream.Type = 2 
objstream.Charset = Cset 
BytesToBstr = objstream.ReadText 
objstream.Close 
set objstream = nothing 
End Function 
%> 

ASP定时生成静态页(HTML)2 
复制代码 代码如下:
<% 
set fs=server.createobject("scripting.filesystemobject") 
file=server.mappath("time.txt") 
set txt=fs.opentextfile(file,1,true) 
if not txt.atendofstream then 
times=txt.ReadLine 
Else 
response.write "<br /><!--有没有发现time.txt 开始生成!-->" 
HtmlPage = "time.txt" ’//生成的HTML文件名 
Template = NOW() 
Set FSO = Server.CreateObject ("Scripting.FileSystemObject") 
Set FileOut = FSO.CreateTextFile(Server.MapPath (HtmlPage)) 
FileOut.WriteLine Template 
FileOut.Close 
Set FSO = Nothing 
end If 


If datediff("s",times,NOW()) > 3600 Then ’//上次更新到现在的时间 大于 3600秒 则 更新 
response.write "<br /><!--时间过了开始更新-->" 

code = "这里是需要生成的html代码" ’//如何得到代码的方式有很多 

’//用FSO生成HTML页面 
HtmlPage = "index.html" ’//生成的HTML文件名 
Template = code 
Set FSO = Server.CreateObject ("Scripting.FileSystemObject") 
Set FileOut = FSO.CreateTextFile(Server.MapPath (HtmlPage)) 
FileOut.WriteLine Template 
FileOut.Close 
Set FSO = Nothing 

’//用FSO生成time.txt文件 
HtmlPage = "time.txt" ’//生成的HTML文件名 
Template = NOW() 
Set FSO = Server.CreateObject ("Scripting.FileSystemObject") 
Set FileOut = FSO.CreateTextFile(Server.MapPath (HtmlPage)) 
FileOut.WriteLine Template 
FileOut.Close 
Set FSO = Nothing 

Else 

response.write "<br /><!-- 已经过去"&datediff("s",times,NOW())&"秒!-->" 

End If 
%> 

详细出处参考:http://www.jb51.net/article/23955.htm


上一条: 做网站设计师的福音:国内20个设计素材好网站
下一条: 服务器添加隐藏账号和检查删除隐藏账号的方法
案例鉴赏
多年的网站建设经验,斌网网络不断提升技术设计服务水平,迎合搜索引擎优化规则
法律法规
多年的网站建设经验,网至普不断提升技术设计服务水平,迎合搜索引擎优化规则
长沙私人做网站    长沙做网站    深圳网站建设    株洲做网站    东莞做网站    南京防腐木    湖南大拇指养猪设备    株洲做网站    
版权所有 © 长沙市天心区斌网网络技术服务部    湘公网安备 43010302000270号  统一社会信用代码:92430103MA4LAMB24R  网站ICP备案号:湘ICP备13006070号-2