动态地址说明
动态访问的url地址是固定的,通过变化参数来访问栏目、文档,并且使用动态地址则不需要配置URL重写。
地址示例:http://xxx.com/index.php/index/lists?catname=news
伪静态说明:
伪静态使用前请先配置URL重写:伪静态(url重写)
伪静态开启后效果:
xxx.com/abc/ , xxx.com/abc/1.html
伪静态是可以把文档、栏目按照目录结构一样访问,实现静态化,像是真实存在的目录,实际上并不存在该目录文件,这样做的好处是你每个文章、栏目都是一个独立的URL地址,对搜索引擎友好。
配置URL规则
前往站点配置
找到高级配置
将URL模式改为伪静态
。
如下图所示,默认带四个URL规则定义
search/index: 搜索页地址 guestbook/index: 留言表单提交地址 index/lists: 栏目地址 index/show: 详情页
URL地址唯一,一个URL地址支持多个规则,多个规则之间英文逗号分隔,在匹配时只会匹配其中一个规则。
结尾符号 $ 说明
我们看到默认的规则里面有$
符号,这个符号的意思是完全匹配,例如定义栏目目录名称规则为:/:catname$
http://xxx.com/new
加上$符号后上面地址会匹配成功,而下面地址不会成功,如果没加$,这两个地址都会匹配成功,通常用于多个规则区分开来,防止覆盖其他规则。
http://xxx.com/new/info
注意:规则使用的是正则形式,像下划线_之类的关键字符注意使用反斜杠转义
支持的变量列表
变量格式::变量名称或者 [:变量名称],加中括号是可选变量
变量名称 | 变量说明 | 使用方式 |
---|---|---|
catdir | 取当前栏目的父级目录名称的值 | :catdir 或 [:catdir] |
catname | 栏目目录名称,添加栏目时填写 | :catname 或 [:catname] |
catid | 栏目ID | :catid 或 [:catid] |
id | 文章ID | :id或 [:id] |
model | 模型标识,栏目页:需要与栏目同时使用 | :model 或 [:model ] |
year | 栏目更新日期年,栏目与详情页需要栏目ID或目录同时存在 | :year 或 [:year ] |
month | 栏目更新日期日 | :month或 [:month] |
day | 栏目更新日期天 | :day 或 [:day ] |
page | 页码 | :page或 [:page] |
lang | 语言标识 | :lang或 [:lang] |
参考示例
列表页 (index/lists)
假设栏目目录名称为:news,该栏目的父级为:dir,模型标识:archives
规则 | 效果 | 格式说明 | 备注 |
---|---|---|---|
/:catname/$,/:catname/list_:page$.html | 首页:http://xxx.com/news/ 分页:http://xxx.com/news/list_2.html | http://xxx.com/栏目目录名称/ | 系统默认规则 |
/[:catdir]/:catname/$ | 首页:http://xxx.com/dir/news/ 分页:http://xxx.com/dir/news/?page=2 | http://xxx.com/父目录/目录名称/ | 加了中括号表示:栏目没有父级时也可以访问,为可选变量 |
/[:catdir]/:catname/$,/[:catdir]/:catname/:page$.html | 首页:http://xxx.com/dir/news/ 分页:http://xxx.com/dir/news/2.html | http://xxx.com/父目录/目录名称/页码.html | 同上,只是这个加了页码变量,2为当前页码,注意文件后缀.html加在最后。 |
/list/:catname/$ | 首页:http://xxx.com/list/news/ | xxx.com/list/目录名称/ | 使用固定值 |
/:model/:catname/$ | http://xxx.com/archives/news/ | xxx.com/模型/目录名称/ | |
/:lang/:catname/$ | http://xxx.com/zh-cn/news/ http://xxx.com/en/news/ | xxx.com/语言/目录名称/ | 多语言 |
文档详情页
假设栏目目录名称为:news,该栏目的父级为:dir,模型标识:archives,文章ID为:10
由于不同模型不同表,所以栏目、模型必须存在一个才能定位文档
规则 | 效果 | 格式说明 | 备注 |
---|---|---|---|
/:catname/:id$.html | xxx.com/news/10.html | xxx.com/目录名称/文章ID.html | |
/[:catdir]/:catname/:id$.html | xxx.com/dir/news/10.html | xxx.com/父目录/当前目录/文章ID.html | 没有父级时自动省略 |