企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
# URL伪静态 [上一页](38.html "上一页")[下一页](40.html "下一页") ThinkPHP支持伪静态URL设置,可以通过设置URL_HTML_SUFFIX参数随意在URL的最后增加你想要的静态后缀,而不会影响当前操作的正常执行。例如,我们设置`'URL_HTML_SUFFIX'=>'shtml'` 的话,我们可以把下面的URL`http://serverName/Blog/read/id/1`变成`http://serverName/Blog/read/id/1.shtml`后者更具有静态页面的URL特征,但是具有和前面的URL相同的执行效果,并且不会影响原来参数的使用。 注意:伪静态后缀设置时可以不包含后缀中的“.”。所以,下面的配置其实是等效的:`'URL_HTML_SUFFIX'=>'.shtml'`伪静态设置后,如果需要动态生成一致的URL,可以使用U方法在模板文件里面生成URL。 关于U方法的使用请参考后面的URL生成部分。 3.1版本开始,默认情况下,可以支持所有的静态后缀,并且会记录当前的伪静态后缀到常量__EXT__,但不会影响正常的页面访问。 例如:`http://serverName/User/3.html<br class="calibre5"></br>http://serverName/User/3.xhtml<br class="calibre5"></br>http://serverName/User/3.xml<br class="calibre5"></br>http://serverName/User/3.pdf`都可以正常访问,如果要获取当前的伪静态后缀,通过常量**\_\_EXT\_\_**获取即可。 如果只是希望支持配置的伪静态后缀,可以直接设置成可以支持多个后缀,例如:`'URL_HTML_SUFFIX'=>'html|shmtl|xml' // 多个用 | 分割`那么,当访问http://serverName/User/3.pdf的时候会报系统错误。 如果设置了多个伪静态后缀的话,使用U函数生成的URL地址中会默认使用第一个后缀,也支持指定后缀生成url地址。**关于多伪静态后缀的支持** 如果你希望网站能够支持多个伪静态后缀设置,例如,希望`http://serverName/Blog/read/id/1.shtml<br class="calibre5"></br>http://serverName/Blog/read/id/1.html<br class="calibre5"></br>http://serverName/Blog/read/id/1.xml`同时有效,可以用下面的方式进行配置:`'URL_HTML_SUFFIX'=>'(shtml|html|xml)'`配置多个伪静态后缀并不会导致自动判断后缀执行不同的方法,如果你有此类需求的话需要使用REST支持,可以参考第18张 REST支持部分。 [上一页](38.html "上一页")[下一页](40.html "下一页")