加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

[转发]从动态页面生成静态页面方法总结

(2008-08-22 15:27:41)
标签:

生成

静态

页面

it

看到论坛里老有人问“把首页asp文件生在html的方法”之类的问题,特将我用过的解决方案总结如下:

方法有3种:

1、用 URL Rewrite,具体到IIS中就是ISAPI_Rewrite

URL Rewrite在不同的Web Server中有不同的实现方法,对于IIS来说最通常的做法就是用ISAPI_Rewrite这个ISAPI Filter来实现。

优点:很省事
缺点:这个办法本身不能真正起到降低数据库压力的作用。
改进:配合缓存服务器(例如:Squid、ISA Server……),可以真正起到降低数据库压力的作用。当然这么做会令页面的更新不是实时的,滞后的时间和缓存策略有关。

2、直接写文件

例如,在Windows平台、ASP技术中,就是用 FSO 或者 ADODB.Stream 来直接写文件。

缺点:很麻烦。写文件还不是最麻烦的事情,最麻烦的是维护事件触发,在必要的时候更新
优点:真正达到降低数据库压力的作用。
改进:配合SSI(Server Side Including,这是中立于Web Server的一项技术),可以减少页面更新的复杂度。

3、用Cron服务

Cron是一种定期执行脚本的服务。用它配合wget定期将动态页面写成静态页面。Cron和wget都都是GNU项目,都已经有从Linux移植到Windows的版本。

优点:省事
缺点:更新不实时,滞后事件和cron脚本的执行间隔时间有关。
改进:当需要在某种情况下数据库内容更新后马上更新页面的时候,可以通过事件触发立即执行cron脚本。



小技巧:

灵活应用客户端的<script language="javascript" type="text/javascript" />标签,可以在静态页面中实现动态功能。例如文章页面的访问计数器就可以这样去实现。

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有