【Thinkphp教程】 如何实现URL伪静态

Think PHP支持伪静态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生成部分。
关于多伪静态后缀的支持
如果你希望网站能够支持多个伪静态后缀设置,例如,希望
 
 
  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支持,可以参考第18张 REST支持部分。

你可能感兴趣的:(thinkphp)