asp 静态页面的另一种思路
来源:asp之家 时间:2011-04-08 10:32:00
其实这里的静态页面并不是真正意义上的静态,但可以达到了静态页面的解析效率,还未经项目测试,拿来分享。
代码如下:
<%
Const DEVJS_INDEX="index.html"
Const INDEX_DEFAULT_INTERVAL=300
Dim sLastUpdate
'用Application保存最后更新的时间,而在页面里做判断,每隔300秒(5分钟)就生成一次页面
sLastUpdate=Application("INDEX_LAST_Update")
If sLastUpdate="" or DateDiff("s",sLastUpdate,now())>INDEX_DEFAULT_INTERVAL Then
'调用MakeIndex()生成页面,同时更改最后更新时间
MakeIndex()
sLastUpdate=Now()
Application("INDEX_LAST_Update")=sLastUpdate
Response.Write "超出默认时间,更新于" & sLastUpdate
Else
Response.Write "读取静态页面,更新于" & sLastUpdate
End If
Response.Write LoadTextFile(Server.MapPath(DEVJS_INDEX),"GB2312")
Function MakeIndex()
sContent="<hr>" & Now()
Call SaveTextFile(Server.MapPath(DEVJS_INDEX),"GB2312",sContent)
End Function
%>
如果过期就更新页面,没有过期直接调用静态页面,这里还用到了两个函数,一并贴上,提醒注意一下,SaveTextFile()是以覆盖方式写入的
就是这一句 oStream.SaveToFile sFilePath,2
代码如下:
<%
Function LoadTextFile(sFilePath,sCharset)
Dim oStream
Set oStream=Server.CreateObject("ADODB.Stream")
oStream.Type=2
oStream.Mode=3
oStream.Open
oStream.Charset=sCharset
oStream.Position=oStream.Size
oStream.LoadFromFile sFilePath
LoadTextFile=oStream.ReadText
oStream.Close
Set oStream=Nothing
End Function
Function SaveTextFile(sFilePath,sCharset,outString)
SaveFile=false
Dim oStream
Set oStream = Server.CreateObject("ADODB.Stream")
oStream.Type=2
oStream.Mode=3
oStream.Open
oStream.Charset=sCharset
oStream.WriteText = outString
oStream.SaveToFile sFilePath,2
oStream.Close
Set oStream = Nothing
SaveTextFile=true
End Function
%>
这个比缓存省事,也直接的多!其实,在MakeIndex()里可以做很多事,比如读取模板文件进行替换这些。
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
asp如何实现强制登录注册?
解决asp中ADODB.Stream 0x800A0C93 错误
SQL Server与Oracle数据库在查询优化上的差异
Oracle数据库索引的维护
语义化的label?
![](https://img.aspxhome.com/file/UploadPic/20092/11/mobileme-login-86s.jpg)
ServerXMLHTTP的setTimeouts超时设置
CSS用relative和absolute实现的图片定位效果
![](https://img.aspxhome.com/file/UploadPic/200810/6/2008106214346662s.gif)
H1标签的定义
![](/images/sg_trans.gif)
什么是XML?
捕捉并保存ASP运行错误的函数代码
jQuery中文入门教程
![](https://img.aspxhome.com/file/UploadPic/up/2007120919444529.gif)
另类读写:ACCESS中Field对象的标题属性
纯CSS3透明水晶盒
![](https://img.aspxhome.com/file/UploadPic/20118/24/01-51s.jpg)
js查找/搜索页面中的字符源代码
巧用Dreamweaver MX设计导航栏特效
![](https://img.aspxhome.com/file/UploadPic/20072/20072311330521s.jpg)
这么多的 Oracle 性能工具
详解PHP结构型设计模式之桥接模式Bridge Pattern
jQuery性能优化指南[译]
交互设计实用指南系列(4)—“有效性”之“简洁清晰,自然易懂”
![](https://img.aspxhome.com/file/UploadPic/up/2010010517023462.gif)