伪静态就是将动态的url伪装成静态的地址,这样做的目的是为了利于seo方便搜索引擎收录。
- 访问速度快。因为内容已经提前生成,代码无需转义也不用读取数据库;
- 安全性高,理论上相比动态url静态页很难被攻击;
- 有利于seo,方便收录。
- 大量生成时会有较高的CPU、磁盘IO的开销;
- 公共内容有修改时,需要将所有页面重新生成。
- 利于SEO;
- 缩短了URL长度,也隐藏了真实的URL地址提高了安全性。
- 会有一定的cpu资源消耗,尤其是有较大访问量时很明显。
3、伪静态文件
4、伪静态规则
伪静态规则写法是通过正则表达式,下面以WDCMS简单举例说明。
4.1 首页index.php转成index.html
RewriteRule index.html index.php
4.2 栏目页/?about/(转成/about.html),^表示开始匹配字符串,$表示匹配结束,$1表示匹配第一部分,*表示重复零次或更多次,[0-9a-zA-Z]表示匹配大小字母、数字
RewriteRule ^([0-9a-zA-Z]*).html$ index.php?$1
4.3 详情页/?tongzhigonggao/78.html(转成/tongzhigonggao/78.html)
RewriteRule ^([0-9a-zA-Z]*)/([0-9]*).html$ index.php?$1/$2.html
4.4 列表页/?news/list_2.html(转成/news/list_2.html),+表示重复1次或更多次
RewriteRule ^([0-9a-zA-Z]*)/list_([0-9]+).html$ index.php?$1/list_$2.html
5、wdcms开启伪静态
'list_url' => '{catdir}.html', 'list_page_url' => '{catdir}/list_{page}.html', 'show_url' => '{catdir}/{id}.html', 'show_page_url' => '{catdir}/{id}_{page}.html',