浅析ThinkPHP中的pathinfo模式和URL重写


Posted in PHP onJanuary 06, 2014
http://serverName/appName/module/action/id/1/

这个就是pathinfo模式

在不考虑路由的情况下,第一个参数会被解析成模块名称(如果启用了分组的话,则依次往后递推),第二个参数会被解析成操作,后面的参数是显式传递的,而且必须成对出现,例如:

http://serverName/appName/module/action/year/2008/month/09/day/21/

通常的URL里面含有index.php,为了达到更好的SEO效果可能需要去掉URL里面的index.php ,通过URL重写的方式可以达到这种效果,通常需要服务器开启URL_REWRITE模块才能支持。
下面是Apache的配置过程,可以参考下:
1、httpd.conf配置文件中加载了mod_rewrite.so模块
2、AllowOverride None 将None改为 All
3、确保URL_MODEL设置为2
4、把下面的内容保存为.htaccess文件放到入口文件的同级目录下

<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]
</IfModule>

对于重来没接触过.htacces文件的可以百度一些,这里提醒一下,保存的文件名就是 .htaccess,可能看起来只有后缀,就是这样,别又在前面加个  ***.htaccess。

重启Apache之后,原来的
http://serverName/index.php/Blog/read/id/1
就可以通过访问
http://serverName/Blog/read/id/1
简化了URL地址

PHP 相关文章推荐
增加反向链接的101个方法 站长推荐
Jan 31 PHP
php去掉字符串的最后一个字符附substr()的用法
Mar 23 PHP
PHP 八种基本的数据类型小结
Jun 01 PHP
php max_execution_time执行时间问题
Jul 17 PHP
php中将指针移动到数据集初始位置的实现代码[mysql_data_seek]
Nov 01 PHP
php验证是否是md5编码的简单代码
Apr 01 PHP
PHP基本语法总结
Sep 06 PHP
php生成网页桌面快捷方式
May 05 PHP
Symfony2针对输入时间进行查询的方法分析
Jun 28 PHP
PHP中OpenSSL加密问题整理
Dec 14 PHP
php intval函数用法总结
Apr 14 PHP
Yii2.0框架behaviors方法使用实例分析
Sep 30 PHP
php Calender(日历)代码分享
Jan 03 #PHP
深入解读php中关于抽象(abstract)类和抽象方法的问题分析
Jan 03 #PHP
PHP运行SVN命令显示某用户的文件更新记录的代码
Jan 03 #PHP
PHP抓屏函数实现屏幕快照代码分享
Jan 02 #PHP
php curl模拟post提交数据示例
Dec 31 #PHP
codeigniter使用技巧批量插入数据实例方法分享
Dec 31 #PHP
PHP字符串的连接的简单实例
Dec 30 #PHP
You might like
php 文件上传代码(限制jpg文件)
2010/01/05 PHP
php高级编程-函数-郑阿奇
2011/07/04 PHP
PHP针对JSON操作实例分析
2015/01/12 PHP
Smarty保留变量用法分析
2016/05/23 PHP
Bootstrap+PHP实现多图上传功能实例详解
2018/04/08 PHP
PHPstorm启用自动换行的方法详解(IDE)
2020/09/17 PHP
JS获取IUSR_机器名和IWAM_机器名帐号的密码
2006/12/06 Javascript
JS 创建对象(常见的几种方法)
2008/11/03 Javascript
让GoogleCode的SVN下的HTML文件在FireFox下正常显示.
2009/05/25 Javascript
javascript面向对象编程代码
2011/12/19 Javascript
JavaScript中函数声明优先于变量声明的实例分析
2012/03/01 Javascript
js 剪切板应用clipboardData详细解析
2013/12/17 Javascript
Jquery插件之Fancybox丰富的弹出层效果附源码下载
2015/12/02 Javascript
浅析Node.js:DNS模块的使用
2016/11/23 Javascript
全面解析vue中的数据双向绑定
2017/05/10 Javascript
BootStrap 页签切换失效的解决方法
2017/08/17 Javascript
bootstrap模态框关闭后清除模态框的数据方法
2018/08/10 Javascript
vue element-ui读取pdf文件的方法
2019/11/26 Javascript
Vue中正确使用Element-UI组件的方法实例
2020/10/13 Javascript
javascript前端实现多视频上传
2020/12/13 Javascript
python使用PIL模块实现给图片打水印的方法
2015/05/22 Python
Python配置虚拟环境图文步骤
2019/05/20 Python
Python 使用list和tuple+条件判断详解
2019/07/30 Python
python使用pip安装模块出现ReadTimeoutError: HTTPSConnectionPool的解决方法
2019/10/04 Python
Python中内建模块collections如何使用
2020/05/27 Python
解决Ubuntu18中的pycharm不能调用tensorflow-gpu的问题
2020/09/17 Python
中外合拍动画首获奥斯卡提名,“上海出品”《飞奔去月球》能否拿下最终大奖?
2021/03/16 国漫
作为网站管理者应当如何防范XSS
2014/08/16 面试题
食品安全责任书
2014/04/15 职场文书
群众路线教育实践活动批评与自我批评
2014/09/15 职场文书
入党积极分子对十八届四中全会期盼的思想汇报
2014/10/17 职场文书
幼儿园园务工作总结2015
2015/05/18 职场文书
城南旧事电影观后感
2015/06/16 职场文书
《小小的船》教学反思
2016/02/18 职场文书
python 字典和列表嵌套用法详解
2021/06/29 Python
Django实现WebSocket在线聊天室功能(channels库)
2021/09/25 Python