PHP生成静态页面的两种实现方法 |
作者:中国设计秀 2008-07-07 10:54:05 |
|
1.管理后台添加记录时,直接生成目标html页面,并且前台调用连接直接指向生成的html页面。这种方法程优点是程序效率最高。
服务器负荷轻,不过由于生成的是纯静态页面,一旦页面样式(模版及css=theme)上有所改动就必须重新生成所有的内容页。
所以实际使用中应用一般不是太多。更多的是使用js,ssi,xml/xsl等客户端手段,生成的静态文件中仅保存数据,不涉及样式,这样能达到速度和维护性的平衡,不过相对前后台程序要复杂些(应用这种方法时,由于内容为纯静态,可以搭配单独编译的纯静态的apache使用……效率和资源占用上比包含动态内容支持的要更佳)
====补充:a.上面说的改动样式,要重新生成所有的内容页,可以通过:
>>>>在可以在每个生成的页面内嵌入一个<scrīptsrc=XXX.php?id=xxx&template=red></scrīpt>来判断是否需要重新生成该页面。
>>>>apache的ErrorDocument404功能,但是这里前台链接是指向html的,如果该html不存在,会通过apache的文件不存在重定向到404处理程序的功能重新生成html
(注:httpd.conf加ErrorDocument404/errprocess.php指令),利用这个功能可以解决修改网站样式的时候,要更新所有生成的html文件的问题,将整个static文件夹删除即可。
b.通过嵌入<scrīpt></scrīpt>js来调用php的方式,更改许多需要变化的地方(如点击率之类的)
2.前台访问链接指向php程序,php程序首先检查是否存在相应的静态文件。如果静态文件不存在。则生成并重定向至此文件,否则直接重定向。
这种方法实际使用中一般和apache的url_rewrite功能一起使用。将php的文件地址重显示为html的形式,有利于搜索引擎的检索。
这种方法在效率上略有损失,不过程序结构简单,便于调整,在访问量不是很大时使用很合适。