ASP生成静态网页的方法(2)
发布时间:2008-02-18 19:20:00
标签:静态,html,数据库,asp
具体实现上又有这两种方法
1。管理后台添加记录时,直接生成目标html页面,并且前台调用连接直接指向生成的html页面。这种方法程优点是程序效率最高。服务器负荷轻,不过由于生成的是纯静态页面,一旦页面样式上有所改动就必须重新生成所有的内容页。所以实际使用中应用一般不是太多。更多的是使用js,ssi,xml/xsl等客户端手段,生成的静态文件中仅保存数据,不涉及样式,这样能达到速度和维护性的平衡,不过相对前后台程序要复杂些(应用这种方法时,由于内容为纯静态,可以搭配单独编译的纯静态的apache使用。。效率和资源占用上比包含动态内容支持的要更佳)
2。前台访问链接指向asp程序,asp程序首先检查是否存在相应的静态文件。如果静态文件不存在。则生成并重定向至此文件,否则直接重定向。这种方法实际使用中一般和apache的url_rewrite功能一起使用。将asp的文件地址重为html的形式,有利于搜索引擎的检索。这种方法在效率上略有损失,不过程序结构简单,便于调整,在访问量不是很大时使用很合适。。
<% sub addhtml()
sql="select * from article where (articleid is null)"
rs.open sql,conn,1,3
rs.addnew
rs("title")=title
rs("keys")=keys
rs("content")=content
rs("Nclassid")=Nclassid
rs("classid")=classid
rs("Nkey")=Nkey
rs("hits")=0
rs("state")="no"
rs("author")=session("admin")
if request.form("writer")<>"" then
rs("writer")=trim(request.form("writer"))
end if
if request.form("writefrom")<>"" then
rs("writefrom")=trim(request.form("writefrom"))
end if
rs("dateandtime")=date()
rs.update
articleid=rs("articleid")
'///////////按文件ID取得文件名
makefilename="node@nhgov"& articleid & ".html"
'//////////////////////////////////
'按日期生成文件夹
'filepath=date()
'Set fso = CreateObject("Scripting.FileSystemObject")
'if Not fso.FolderExists(server.mappath(filepath)) then
'Fso.Createfolder(server.mappath(filepath))
'end if
'Set fso = nothing
'/////////////////////////////////
'/////////////////////////////////
'// By kalen At 2002/12/18 //
'/////////////////////////////////
'导入模板文件
filename = "node_news\template"
Set MyFileObject=Server.CreateObject("Scripting.FileSystemObject")
Set MyTextFile=MyFileObject.OpenTextFile(server.mappath(filename))
While NOT MyTextFile.AtEndOfLine
gut = MyTextFile.ReadAll
WEND
MyTextFile.Close
'加入模板参数
'/////////////////////////////////
dates=date()
gut=replace(gut,"Hits_id",articleid)
gut=replace(gut,"Date",dates)
gut=replace(gut,"Title",title)
if request("htmlable")="yes" then
contents=content
else
contents=replace(replace(content,chr(13),"<BR>")," "," ")
end if
gut=replace(gut,"Content_Test",contents)
gut=replace(gut,"keyword_Test",Nkey)
'/////////////////////////////////
'生成新文件
'/////////////////////////////////
Set fso = Server.CreateObject("Scripting.FileSystemObject")
Set fout = fso.CreateTextFile(server.mappath(filePath& "\" & makefilename))
fout.WriteLine gut
fout.close
'/////////////////////////////////
end sub
%>
0
投稿
猜你喜欢
- 颜色的变化跟人类的智慧一样,是无穷的,每个阶段都会有流行的色彩,有属于一个时代的颜色!WEB2.0是一个概念,它宣扬,定位了一些东西,以用户
- 有时候需要在网页中某个div载入之后,动态引入一段javascript,IE下的解决方案: newjs. onreadystatechang
- 字体的处理在网页设计中无论怎么强调也不为过,毕竟网页使用来传递信息的,而最经典最直接的信息传递方式就是
- 无法打开用户默认数据库,登录失败,这也是SQL Server使用者熟悉的问题之一。在使用企业管理器、查询分析器、各类工具和应用软件的时候,只
- 本文说明向外扩展数据库系统的两个选项,从而实现更高的可扩展性:水平数据划分和垂直数据划分当我提到向外扩展数据库系统时,我实际上只是讨论对数据
- 可以把本功能写成一个函数,函数的处理过程描述如下:首先调用adodb.connection对象中的openSchema函数,这样会得到一个R
- 代码如下:<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001&quo
- Yahoo发布了一款基于FireFox的插件,名叫YSlow,这个插件可以分析网站的页面,并告诉你为了提高网站性能,如何基于某些规则而进行优
- 一个不错的网页拾色器也叫调色版,请看截图:当想要更多颜色时点击“其它颜色...”此时将调用系统自带的那个颜色选择框:注意:只有把〈scrip
- IE下专属CSS:<![if !IE]><link rel="stylesheet" type=&qu
- 很多朋友对FrontPage2003中增加的网页布局功能很感兴趣,现在我们一起来深入了解这一实用功能。 用FrontPage200
- 前三篇文章中,明确了栅格系统的设计细节和适用范围。这一篇将集中讨论960栅格系统的技术实现。Blueprint的实现Blueprint是一个
- 在一些网页应用中,就比如在投票系统中,当我们进行的是多项投票时,我们要求用户最多只能选择几项进行投票,这也是就是说选择复选框的个数最多几个.
- ancestor:祖先adjacent:相邻algorithm:运算法则anonymous box:无名盒子。例: anonymous in
- 学习使用存储过程(Stored Procedure),是ASP程序员的必须课之一。所有的大型数据库都支持存储过程,比如Oracle
- 来由:最近的工作一直是学校设计教程的开发,都是自己根据理论知识加一些实际工作经验相结合写的教程,所以不会咬文嚼字,文笔也不一定非常专业和流畅
- 动机: 查询功能是我们在网站上见过的最普遍也是最常用的一个功能模块了。以往的信息查询都是连接到数据库的,每一次点击都必须要后台数据库的支持。
- 一些简单的代码简化下面是一个简单示例,它说明了 jQuery 对代码的影响。要执行一些真正简单和常见的任务,比方说为页面的某一区域中的每个链
- 还有种片面的观点认为,做网站设计与平面差不多,比如老罗发布的这则招聘中提到:年薪十万招擅长做下列网站设计风格的平面设计师一名。在专业角度,网
- 别人复制你网站的文章时自动加上注释,这个功能你在很多网站应该都有体会过,当我们复制一段内容时,就自动在文章后面加上了网站的一些