thinkphp的伪静态有关问题

php中文网
发布: 2016-06-13 11:15:26
原创
964人浏览过

thinkphp的伪静态问题
高手些,请教一个问题:thinkphp中伪静态,设置后,怎么没有自己改变url地址,比如访问127.0.0.1/Index/index/id/12它没有变成127.0.0.1/Index/index/12.html  说师要开启url重写,我开启后还是没有效果(除了可以不加index.php),是不是要写伪静态规则? 这个伪静态规则咋个写?是不是在.htaccess文件中写?


------解决方案--------------------
这个应该是通过appach 或nginx来配吧,
------解决方案--------------------
一、如果你用pathinfo的话,127.0.0.1/Index/index/id/12应该是访问Index模块的index方法,传入参数id,值为12。

然后如果你使用了$this->display();  // 很久没用有点忘了。。。

它会调用Tpl/Index/index.html模板进行解析输出(你可以往模板里assign变量)

-------------------

二、而你所说的伪静态是在配置文件中设置了'URL_HTML_SUFFIX'=>'html'吗?

那127.0.0.1/Index/index/id/12 和 127.0.0.1/Index/index/12.html 的调用过程跟上面所说的是一样的。只不过后者更具有静态页面的URL特征。

--------------------

我不是很清楚你是否只是想实现第二点所说的那种伪静态,还是想访问“12.html”这个文件。

若是后者,把你“12.html”的文件重命名为index.html放到Tpl/Index/目录下即可。
------解决方案--------------------
可以通过设置URL_HTML_SUFFIX参数随意在URL的最后增加你想要的静态后缀,而不会影响当前操作的正常执行。
伪静态设置后,如果需要动态生成一致的URL,可以使用U方法在模板文件里面生成URL。

U('Blog/read?id=1')这个定义为例。
当前URL设置为REWRITE模式,并且设置了伪静态后缀为.html的话,同样的方法最后生成的URL地址是: 
http://serverName/Blog/read/id/1.html

------解决方案--------------------
URL_HTML_SUFFIX'=>'html'
相关标签:
PHP速学教程(入门到精通)
PHP速学教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号