ThinkPHP 3.2.3(三)架构之URL模式
URL模式
|
URL_MODEL
|
写法
|
普通模式
(GET传参)
|
0
|
可以在/ThinkPHP/Conf/convention.php文件里设置变量, 默认的变量设置如下:
URL写为:http://localhost/?m=home&c=index&a=getName&name=liulu, m参数表示模块,c参数表示控制器,a参数表示操作,后面的表示其他GET参数。
如果将变量改为:
则URL写为:http://localhost/ThinkPHP-3.2.3/?module=home&controller=index&action=getName&name=liulu 如果仍用
http://localhost/ThinkPHP-3.2.3/?m=home&c=index&a=getName,依然可以访问。。。 |
PATHINFO模式
(系统默认)
|
1
|
http://localhost/ ThinkPHP-3.2.3/ index.php/home/index/getName/name/liulu/ PATHINFO模式依然可以采用普通URL模式的参数方式:
http://localhost/ ThinkPHP-3.2.3/ index.php/home/index/getName?name=liulu 可以更改/ThinkPHP/Conf/convention.php文件里的
URL_PATHINFO_DEPR配置: // PATHINFO模式下,各参数之间的分割符号
'URL_PATHINFO_DEPR' => '/',
如果“/”改为“-”,URL写为:localhost/ThinkPHP-3.2.3/index.php/home-index-getName-name-liulu或 localhost/ThinkPHP-3.2.3/index.php/home-index-getName?name=liulu |
REWRITE模式
|
2
|
在PATHINFO模式的基础上添加了重写规则的支持,可以去掉URL地址里面的入口文件index.php,但是需要额外配置WEB服务器的重写规则。
如果是Apache则需要添加与入口文件同级的.htaccess文件
URL写为: http://localhost/ ThinkPHP-3.2.3 /home/index/getName?name=liulu |
兼容模式
|
3
|
用于不支持PATHINFO的特殊环境。
在/ThinkPHP/Conf/convention.php文件里,兼容模式变量的名称定义默认为s:
// 兼容模式PATHINFO获取变量
// 例如 ?s=/module/action/id/1 后面的参数取决于URL_PATHINFO_DEPR
'VAR_PATHINFO' => 's',
URL写为: http://localhost/ ThinkPHP-3.2.3 /?s=/home/index/getName/name/liulu 配合Web服务器重写规则的定义,可以达到和REWRITE模式一样的URL效果。
URL写为: http://localhost/ ThinkPHP-3.2.3 /home/index/getName/name/liulu |
ThinkPHP 3.2.3(三)架构之URL模式的更多相关文章
- 【三十一】thinkphp之安装、配置、模块化及URL模式
一:安装与配置 1.获取ThinkPHP 下载地址:http://www.thinkphp.cn/down.html 2.入口文件 ThinkPHP采用单一入口模式对项目进行部署和访问,所以我们需要通 ...
- ThinkPHP URL模式和URL重写
现在用的版本是TP3.1.3,这两天总是遇到NotFound的错误,解析路径错误,所以认真研究了一下手册,发现问题出在URL模式上面. URL模式 一般是使用U方法来生成路径,U方法的定义规则如下(方 ...
- thinkphp URL 模式
兼容ThinkPHP三种url模式的nginx rewrite location / { root /var/www; index index.html index.htm index.php; if ...
- ThinkPHP的URL模式
ThinkPHP的URL模式有四种,默认是PATHINFO模式,其他三种分别为:普通模式.REWRITE和兼容模式. 一.PATHINFO模式 浏览器输入格式为: http://localhost/d ...
- thinkphp url模式
入口文件是应用的单一入口,对应用的所有请求都定向到应用入口文件,系统会从URL参数中解析当前请求的模块.控制器和操作: http://serverName/index.php/模块/控制器/操作 这是 ...
- ThinkPHP的四种URL模式 URL_MODEL
ThinkPHP支持四种URL模式,可以通过设置URL_MODEL参数来定义,包括普通模式.PATHINFO.REWRITE和兼容模式. 普通模式 设置URL_MODEL 为0 采用传统的URL参数模 ...
- thinkphp学习笔记6—url模式
原文:thinkphp学习笔记6-url模式 入口文件是应用的唯一入口,因为可以多入口,每个应用可以对应一个入口文件,系统会从rul参数中解析当前请求的模块,控制器,操作.ThinkPHP是区分大小写 ...
- 大型网站技术架构(四)--核心架构要素 开启mac上印象笔记的代码块 大型网站技术架构(三)--架构模式 JDK8 stream toMap() java.lang.IllegalStateException: Duplicate key异常解决(key重复)
大型网站技术架构(四)--核心架构要素 作者:13GitHub:https://github.com/ZHENFENG13版权声明:本文为原创文章,未经允许不得转载.此篇已收录至<大型网站技 ...
- 详解ThinkPHP支持的URL模式有四种普通模式、PATHINFO、REWRITE和兼容模式
URL模式 URL_MODEL设置 普通模式 0 PATHINFO模式 1 REWRITE模式 2 兼容模式 3 如果你整个应用下面的模块都是采用统一的URL模式 ...
随机推荐
- MVC中view和controller相互传值的方法
MVC项目中,在view层如果使用前台框架,框架中会有封装好的相互传值方法.但是,那些postdata[][]方法不一定能够满足功能需求,反而一些常用的传值方法可能会刚好解决它们的不足.总结如下: 一 ...
- 阻止iOS中页面弹性回滚,只允许div.phone_body的区块有弹性
使用说明:只要替换选择器:var selector = '.phone_body'; /** * 阻止iOS中页面弹性回滚,只允许div.scroller的区块有弹性 */ (function () ...
- 我的Android第二章
前言 之前有很多人遇到了关于内部类的问题[主要在android的学习之中会大量的使用到],内部类是什么,内部类怎么定义,内部类的分类,内部类的好处,内部类如何访问,这里我们来结合代码简单的理解一下 1 ...
- laravel框架总结(十二) -- 关联关系
这里我们users表对应的模型类名是users,大家特意注意下和user取名的不同 1.一对一关系 1>表A和表B的记录一一对应,比如一个用户对应一个社交账号 数据表的设计如下: 2> ...
- python 学习笔记十七 django深入学习二 form,models
表单 GET 和 POST 处理表单时候只会用到GET 和 POST 方法. Django 的登录表单使用POST 方法,在这个方法中浏览器组合表单数据.对它们进行编码以用于传输.将它们发送到服务器然 ...
- 讯时网关IP对接PBX
先配置呼入 1.在网关的中继线绑定号码 2.在路由表写入到PBX 路由到 pbx IP 绑定的号码和路由的 fxo后面的数字要一致 3.在PBX 建一个sip中继,host为网关IP 4.创 ...
- REVERSE
REVERSE函数,刚刚接触,这是一个Oracle和MS Sql都能用的,不知道是不是T-SQL标准的函数,反正能用,挺好 SELECT REVERSE('abcd') 结果为dcba,就是把字符串反 ...
- PB-日志-系统函数2.13.7Match()、MatchW()
---恢复内容开始--- Match() 功 能:确定字符串中是否包含指定模式的字符. 语 法:Match ( string, textpattern ) 参 数:string:string类型,指定 ...
- LayoutControl让一个控件占据多行或者多列
拖动一个layoutcontrol到form上之后,会自动附带一个layoutgroup 设置layoutgroup的layoutmode为table 设置layoutgroup的OptionsTab ...
- linux多文本替换内容
之前不小心写错了代码,把nil写成了Nil,脚本写的传到git中了,批量替换解决办法: grep "Nil" -rl $PATH/ |xargs sed -i 's/Nil/nil ...