IT教程 | 加入收藏 | 简体 | 繁体
ThinkPHP:Php教程讲解Php函数讲解ThinkPHP
当前位置: 首页 > Php教程 > ThinkPHP

Action控制器:URL伪静态设置

2014-09-18来源:[www.121ask.com]热度:0℃ 【字体:

Action控制器:URL伪静态设置-可以通过设置URL_HTML_SUFFIX参数随意在URL的最后增加你想要的静态后缀,而不会影响当前操作的正常执行。
ThinkPHP支持伪静态URL设置,可以通过设置URL_HTML_SUFFIX参数随意在URL的最后增加你想要的静态后缀,而不会影响当前操作的正常执行。例如,我们设置
  1. 'URL_HTML_SUFFIX'=>'shtml'
的话,我们可以把下面的URL
  1. http://serverName/Blog/read/id/1
变成
  1. http://serverName/Blog/read/id/1.shtml
后者更具有静态页面的URL特征,但是具有和前面的URL相同的执行效果,并且不会影响原来参数的使用。
注意:伪静态后缀设置时可以不包含后缀中的“.”。所以,下面的配置其实是等效的:
  1. 'URL_HTML_SUFFIX'=>'.shtml'
伪静态设置后,如果需要动态生成一致的URL,可以使用U方法在模板文件里面生成URL。
关于U方法的使用请参考后面的URL生成部分。

3.1版本开始,默认情况下,可以支持所有的静态后缀,并且会记录当前的伪静态后缀到常量__EXT__,但不会影响正常的页面访问。
例如:
  1. http://serverName/User/3.html
  2. http://serverName/User/3.xhtml
  3. http://serverName/User/3.xml
  4. http://serverName/User/3.pdf
都可以正常访问,如果要获取当前的伪静态后缀,通过常量__EXT__获取即可。

如果只是希望支持配置的伪静态后缀,可以直接设置成可以支持多个后缀,例如:
  1. 'URL_HTML_SUFFIX'=>'html|shmtl|xml' // 多个用 | 分割
那么,当访问http://serverName/User/3.pdf的时候会报系统错误。

如果设置了多个伪静态后缀的话,使用U函数生成的URL地址中会默认使用第一个后缀,也支持指定后缀生成url地址。关于多伪静态后缀的支持
如果你希望网站能够支持多个伪静态后缀设置,例如,希望
  1. http://serverName/Blog/read/id/1.shtml
  2. http://serverName/Blog/read/id/1.html
  3. http://serverName/Blog/read/id/1.xml
同时有效,可以用下面的方式进行配置:
  1. 'URL_HTML_SUFFIX'=>'(shtml|html|xml)'
配置多个伪静态后缀并不会导致自动判断后缀执行不同的方法,如果你有此类需求的话需要使用REST支持。
以上IT文章《Action控制器:URL伪静态设置》由名客技术网[www.121ask.com]提供阅读!
推广信息
推广信息
名客技术网是一个免费为广大IT技术人员提供IT教程,绿色软件,asp/php/jsp/java/net等实例视频教程,CMS教程,破解软件下载以及学习相关源码、知识的IT网站。
名客技术网如果无意之中侵犯了您的版权,请来电告知,本站将在3个工作日内删除 QQ:175352796
Copyright 2011-2017 Powered by 121ASK.COM, All Rights Reserved.
备案号:鄂ICP备11013833号-3