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
%>


猜你喜欢
- 目录一、定义二、作用三、导入1.import导入import 模块名from importfrom 模块名 import *总结一、定义包含
- 1、异常的传播当在函数中出现异常时,如果在函数中对异常进行了处理,则异常不会再继续传播。如果函数中没有对异常进行处理,则异常会继续向函数调用
- 这里只列举了部分方法,其他方法或python库暂时还没使用到1.不用库,直接打印:代码样例:import time#demo1def pro
- 什么是生成器?生成器是一个包含了特殊关键字yield的函数。当被调用的时候,生成器函数返回一个生成器。可以使用send,throw,clos
- 一、思路介绍在已有的单路径迷宫基础上打开一块合适的墙就可以构成2路径的迷宫。打开的墙不能和已有的路径过近。1。从开始和终点开始进行广度优先搜
- 字典中元素的个数计算len(字典名)举例:person={"姓名":"张三","年龄&qu
- 上一次写的《Bootstrap编写一个兼容主流浏览器的受众巨幕式风格页面》(点击打开链接)部分老一辈的需求可能对这种后现代的风格并不满意,没
- 本文实例为大家分享了python opencv进行图像拼接的具体代码,供大家参考,具体内容如下思路和方法思路1、提取要拼接的两张图片的特征点
- 环境:vue 2.9.3; webpack目的:接口的调用跨域方式:1、express中间的使用2、nginx代理3、谷歌浏览器跨域设置--
- Rel-License 是微格式的开发标准之一,简单的说就是通过给引用标签(通常是链接)加上REL属性,来标明所引用链接/数据与文章的关系。
- explain显示了MySQL如何使用索引来处理select语句以及连接表。可以帮助选择更好的索引和写出更优化的查询语句。简单讲,它的作用就
- 原始生成对抗网络Generative Adversarial Networks GAN包含生成器Generator和判别器Discrimin
- 目录Pyppeteer 是什么Pyppeteer能做什么截图导出PDF公众号链接导出PDF示例Pyppeteer 是什么介绍 Pyppete
- 跨域当我们遇到请求后台接口遇到 Access-Control-Allow-Origin 时,那说明跨域了。跨域是因为浏览器的同源策略所导致,
- 最近在研究pathon的命令行解析工具,argparse,它是Python标准库中推荐使用的编写命令行程序的工具。以前老是做UI程序,今天试
- 摘要:本文主要学习了如何使用DBUtils在Java代码中更方便的操作数据库。概述DBUtils是Java编程中的数据库操作实用工具,小巧简
- psutil是一个跨平台进程和系统监控的Python库,而gopsutil是其Go语言版本的实现。本文介绍了它的基本使用。Go语言部署简单、
- 在大的互联网公司干技术的基本都会碰到测试、预发布、线上这种多套环境的,来实现测试和线上正式环境的隔离,这种情况下,就难免会碰到秀逗了把测试的
- 操作系统:Windows2000,IIS5出现症状:使用ASPJPEG时执行Server.CreateObject("Persit
- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN&