为什么要伪静态?具体在这里就不说了,你懂的!一方面更新修改后不需要生成静态文件,另一方面为了SEO!
访问规则如下
1
2
|
list-{$catid}-{$page}.html content-{$catid}-{$id}-{$page}.html |
可以到扩展->URL规则管理,设置。
注意以下的方法只适用于Apache服务器的,如果IIS服务器请使用httpd.ini而不是.htaccess。
设置httpd.ini的方法略跟.htaccess不同,因为我本地没有IIS所以就不写这些规则了。
一、检查服务器是否支持rewrite
例如本地开启rewrite方法如下
Apache 配置文件 httpd.conf
1、LoadModule rewrite_module modules/mod_rewrite.so
把这句的“#”注释掉。
2、AllowOverride none 改为 AllowOverride all
重启apache服务器。
二、准备.htaccess文件(如何建立. htaccess )
若是windows,可以使用记事本,保存选择另存为,".htaccess" ,注意命名时要加上""。
得到.htaccess文件,然后把以下代码写进去保存。
1
2
3
4
5
6
|
RewriteEngine On RewriteRule ^(.*)content-([0-9]+)-([0-9]+)-([0-9]+).html$ $1/index.php?m=content&c=index&a=show&catid=$2&id= $3&page=$4 RewriteRule ^(.*)show-([0-9]+)-([0-9]+)-([0-9]+).html$ $1/index.php?m=content&c=index&a=show&catid=$2&id= $3&page=$4 RewriteRule ^(.*)list-([0-9]+)-([0-9]+).html$ $1/index.php?m=content&c=index&a=lists&catid=$2&page=$3 |
以上的是.htaccess规则,语法详解可以百度下。
要是想在本地测试,例如 127.0.0.1/my2400,因为不是根目录访问,所以把以上代码改写如下(多了个/my2400):
1
2
3
4
5
6
|
RewriteEngine On RewriteRule ^(.*)content-([0-9]+)-([0-9]+)-([0-9]+).html$ $1/my2400/index.php?m=content&c=index&a=show&catid= $2&id=$3&page=$4 RewriteRule ^(.*)show-([0-9]+)-([0-9]+)-([0-9]+).html$ $1/my2400/index.php?m=content&c=index&a=show&catid=$2&id= $3&page=$4 RewriteRule ^(.*)list-([0-9]+)-([0-9]+).html$ $1/my2400/index.php?m=content&c=index&a=lists&catid=$2&page=$3 |
三、PHPCMS V9后台设置分类栏目。
位置:内容->管理栏目->添加栏目
注意设置第二选项卡,“生成HTML设置”
栏目页URL规则:list-1-2-1.html
内容页URL规则:content-1-2-1.html
四、批量更新URL,完成伪静态设置。