Feb 01, 2011 PHP

伪静态

一、伪静态概述 1.1、什么是伪静态         伪静态即是网站本身是动态网页(如php、asp、jsp等格式),有时这类动态网页还跟"?"加参数来读取数据库内的不同资料,通过做URL重写操作(即Rewrite)实现访问静态网页。很典型的案例即是Discuz论坛系统,后台就有一个设置伪静态功能,开启伪静态后,动态网页即被转换重写成静态网页类型页面,通过浏览器访问地址和真的静态页面没区别。但是注意:做伪静态的前提就是服务器要支持伪静态重写URL Rewrite功能。         考虑搜索引擎优化(即SEO),将动态网页通过服务器处理成静态页面,如http://blog.9611.xyz/index.php/2011/02/wjt/这样的动态网页处理成http://blog.9611.xyz/index.php/2011/02/wjt.html这样格式静态页面,常见的论坛帖子页面,都是经过伪静态处理成静态页面格式html页面。由于网站所用的程序语言不易被发现,经过重写来将动态网页的程序后缀变为html的静态页面格式。伪静态是一种可以把文件后缀改成任何可能的一种方法,比如若想把php文件伪静态成html文件,这种配置较简单,后面会提到相应配置。   1.2、真静态、伪静态优点和缺点 1.2.1、真静态(html)优点         (1)、减少服务器对数据响应的负荷;         (2)、加载不用调动数据库,响应速度快。        1.2.2、真静态缺点         (1)、维护不方便,每次都要手动生成;         (2)、空间占用比较大,容易造成磁盘压力;         (3)、生成的文件多,服务器对html文件的响应负担也较重。 1.2.3、伪静态(url重写)优点         (1)、可以方便的实现对化化引擎的优化,并且比生成静态更加方便;         (2)、占空间比较小;         (3)、首页每天都自动变化,不用维护。网站首页一般都有热点排行之类的,你可以设为,24小时排行,一周排行,再加上最新文章,最新点评等。这样首页天天是有变化的;         (4)、便于广告的轮显。比如:你可以把 ad.php这个页面虚成n个页面,如ad_1.php,ad_2.php,ad_3.php,在不同的页面放不同的广告。总之是动态的,就可以随意动。   1.2.4、伪静态缺点         (1)、如果流量特别大,使用伪静态容易出现CPU使用超负荷,因为伪静态是使用正则判断来指定页面而不是真实地址,分辨到底显示哪个页面的责任也由直接指定转由CPU来判断了,所以CPU占有量的上升,确实是伪静态最大的弊病;         (2)、伪静态效率不如生成html的,因为它不是真正意义上的静态页,所以每次请求都是要去读取数据库的信息(这个可以用缓存技术来补偿一下)。   1.3、真静态、伪静态原理与实现方案 1.3.1、伪静态…