ThinkPHP中pathinfo的访问模式、路径访问模式及URL重写总结


Posted in PHP onAugust 23, 2014

本文针对ThinkPHP中pathinfo的两种模式、四种路径访问模式和URL重写相关知识进行了总结归纳,分享给大家便于查询和借鉴。具体归纳如下:

1、pathinfo

访问模块IndexAction.class.php下边的test方法

   http://localhost/index.php?m=Index&a=test 等同于 http://localhost/index.php/Index/test

2、四种路径访问模式
   
在config目录下边来做修改 URL_MODEL的值,分别表述如下:

值为0   叫做普通模式。如:http://localhost/index.php?m=模块&a=方法
值为1   叫做pathinfo模式。如:http://localhost/index.php/模块/方法
值为2   叫做rewrite重写(伪静态) 可以自己写相关的rewrite规则,也可以使用系统为我们提供的rewrite规则隐藏掉index.php,生成:http://localhost/模块/方法
值为3   叫做兼容模式。当服务器上面不支持pathinfo模式的时候,但是你又在之前的路径访问格式上面,全部用的是pathinfo格式。那么它会提示你路径格式不正确。那么,你就可以用标号为3的兼容模式来处理。他的路径访问类似于http://localhost/index.php?s=模块/方法 

3、URL重写步骤:
 
(1)、D:\wamp\wamp\Apache2\conf\httpd.conf开启apache服务器中的URL_REWRITE模块 

(2)、AllowOverride None 将 None 改为 All

(3)、确保config.php配置文件中 URL_MODEL 设置为 2

(4)、把 .htaccess 文件放到入口文件的同级目录下
   
采用URL重写利于seo,不过会加大服务器的性能消耗。

希望本文所述对大家ThinkPHP程序设计有所帮助。

PHP 相关文章推荐
PHP配置心得包含MYSQL5乱码解决
Nov 20 PHP
如何使用FireFox插件FirePHP调试PHP
Jul 23 PHP
php正则取img标记中任意属性(正则替换去掉或改变图片img标记中的任意属性)
Aug 13 PHP
PHP中的gzcompress、gzdeflate、gzencode函数详解
Jul 29 PHP
PHP Streams(流)详细介绍及使用
May 12 PHP
PHP判断FORM表单或URL参数来的数据是否为整数的方法
Mar 25 PHP
php实现搜索类封装示例
Mar 31 PHP
php字符串操作常见问题小结
Oct 11 PHP
php实现微信原生支付(扫码支付)功能
May 30 PHP
ThinkPHP框架结合Ajax实现用户名校验功能示例
Jul 03 PHP
PHP容器类的两种实现方式示例
Jul 24 PHP
PHP开发API接口签名生成及验证操作示例
May 27 PHP
wamp安装后自定义配置的方法
Aug 23 #PHP
PHP中feof()函数实例测试
Aug 23 #PHP
PHP实现利用MySQL保存session的方法
Aug 23 #PHP
ThinkPHP后台首页index使用frameset时的注意事项分析
Aug 22 #PHP
ThinkPHP模板替换与系统常量及应用实例教程
Aug 22 #PHP
ThinkPHP调试模式与日志记录概述
Aug 22 #PHP
ThinkPHP连接数据库及主从数据库的设置教程
Aug 22 #PHP
You might like
php下intval()和(int)转换使用与区别
2008/07/18 PHP
攻克CakePHP系列一 连接MySQL数据库
2008/10/22 PHP
按上下级层次关系输出内容的PHP代码
2010/07/17 PHP
php上传文件中文文件名乱码的解决方法
2013/11/01 PHP
php的PDO事务处理机制实例分析
2017/02/16 PHP
thinkphp5 migrate数据库迁移工具
2018/02/20 PHP
PHP实现微信退款功能
2018/10/02 PHP
js中document.getElementByid、document.all和document.layers区分介绍
2011/12/08 Javascript
Javascript查询DBpedia小应用实例学习
2013/03/07 Javascript
JavaScript定义类和对象的方法
2014/11/26 Javascript
Javascript之面向对象--封装
2016/12/02 Javascript
Angular的MVC和作用域
2016/12/26 Javascript
nodejs进阶(6)—连接MySQL数据库示例
2017/01/07 NodeJs
BootStrap 图片样式、辅助类样式和CSS组件的实例详解
2017/01/20 Javascript
关于vue.js过渡css类名的理解(推荐)
2017/04/10 Javascript
详解使用vue实现tab 切换操作
2017/07/03 Javascript
JS设计模式之访问者模式定义与用法分析
2018/02/05 Javascript
详解如何构建Promise队列实现异步函数顺序执行
2018/10/23 Javascript
通过cordova将vue项目打包为webapp的方法
2019/02/02 Javascript
微信小程序实现动态列表项的顺序加载动画
2019/07/25 Javascript
Vue使用NProgress的操作过程解析
2019/10/10 Javascript
[46:55]Ti4 冒泡赛第二轮 LGD vs C9
2014/07/14 DOTA
Python使用回溯法子集树模板解决迷宫问题示例
2017/09/01 Python
Python 3.6 性能测试框架Locust安装及使用方法(详解)
2017/10/11 Python
Sanic框架应用部署方法详解
2018/07/18 Python
浅谈python连续赋值可能引发的错误
2018/11/10 Python
python3正则提取字符串里的中文实例
2019/01/31 Python
pytorch dataloader 取batch_size时候出现bug的解决方式
2020/02/20 Python
PyCharm最新激活码PyCharm2020.2.3有效
2020/11/18 Python
python3.7中安装paddleocr及paddlepaddle包的多种方法
2020/11/27 Python
95%的面试官都会问到的50道Java线程题,附答案
2012/08/03 面试题
高级文秘工作总结的自我评价
2013/09/28 职场文书
中专生自我鉴定书范文
2013/12/28 职场文书
校园新闻广播稿
2014/01/10 职场文书
2015年大学班级工作总结
2015/04/28 职场文书
2015中秋节晚会开场白
2015/07/30 职场文书