ThinkPHP 网址格式URL地址怎么设置~呢?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ThinkPHP 网址格式URL地址怎么设置~呢?相关的知识,希望对你有一定的参考价值。

/Thinkphp/conf/convention.php
/* URL设置 */
'URL_CASE_INSENSITIVE' => true, // 默认false 表示URL区分大小写 true则表示不区分大小写
'URL_MODEL' => 1, // URL访问模式,可选参数0、1、2、3,代表以下四种模式:
// 0 (普通模式); 1 (PATHINFO 模式); 2 (REWRITE 模式); 3 (兼容模式) 默认为PATHINFO 模式
'URL_PATHINFO_DEPR' => '/', // PATHINFO模式下,各参数之间的分割符号
'URL_REQUEST_URI' => 'REQUEST_URI', // 获取当前页面地址的系统变量 默认为REQUEST_URI
'URL_html_SUFFIX' => 'html', // URL伪静态后缀设置
'URL_DENY_SUFFIX' => 'ico|png|gif|jpg', // URL禁止访问的后缀设置
最好把这段复制到自己的application/commen/conf/config.php里修改。这样避免污染框架。
参考技术A thinkPHP的URL在config中配置
一、URL规则
1、默认是区分大小写的
2、如果我们不想区分大小写可以改配置文件
'URL_CASE_INSENSITIVE'=>true,//url不区分大小写
3、如果模块名为 UserGroupAction,那么url找模块就必要要写成
http://localhost/thinkphp4/index.php/user_group/index
4、如果'URL_CASE_INSENSITIVE'=>false,那么url也可以写为
http://localhost/thinkphp4/index.php/UserGroup/index
二、URL伪静态
'URL_HTML_SUFFIX'=>'html|shtml|xml',//限制伪静态的后缀
三、URL路由
1、启动路由
要在配置文件中开启路由支持
'URL_ROUTER_ON'=>ture//开启路由
2、使用路由
1.规则表达式配置路由
'URL_ROUTE_RULES'=>array()//路由规则
'my'=>'Index/index',//静态地址路由
'my'=>'/Index/index',//静态地址路由,加/直接跳到网站根目录下。
':id/:num'=>'Index/index',//动态地址路由,可以$_GET接收地址栏参数
'year/:year/:month/:date'=>'Index/index',//动态和静态混合地址路由
'year/:year\d/:month\d/:date\d'=>'Index/index',//动态和静态混合地址路由加上 \d代表类型只能是数字
'my/:id$'=>'Index/index',// 加上$说明地址中只能是 my/1000 后面不能有其他内容了
2.正则表达式配置路由,必须以/开始 /结束
'/^year\/(\d4)\/(\d2)\/(\d2)/'=>'Index/index?year=:1&month=:2&date=:3'//这里\d表示必须是数字

ThinkPHP 网址格式URL地址怎么设置

地址http://localhost/index.php/index.php/wifiadmin/user/index.html怎么设置成http://localhost/index.php/wifiadmin/user/index.html

thinkPHP的URL在config中配置

一、URL规则

1、默认是区分大小写的

2、如果我们不想区分大小写可以改配置文件

\'URL_CASE_INSENSITIVE\'=>true,//url不区分大小写

3、如果模块名为 UserGroupAction,那么url找模块就必要要写成

http://localhost/thinkphp4/index.php/user_group/index

4、如果\'URL_CASE_INSENSITIVE\'=>false,那么url也可以写为

http://localhost/thinkphp4/index.php/UserGroup/index

二、URL伪静态

\'URL_HTML_SUFFIX\'=>\'html|shtml|xml\',//限制伪静态的后缀

三、URL路由

1、启动路由
要在配置文件中开启路由支持
\'URL_ROUTER_ON\'=>ture//开启路由

2、使用路由

1.规则表达式配置路由

\'URL_ROUTE_RULES\'=>array()//路由规则  
    \'my\'=>\'Index/index\',//静态地址路由  
    \'my\'=>\'/Index/index\',//静态地址路由,加/直接跳到网站根目录下。  
    \':id/:num\'=>\'Index/index\',//动态地址路由,可以$_GET接收地址栏参数  
    \'year/:year/:month/:date\'=>\'Index/index\',//动态和静态混合地址路由  
    \'year/:year\\d/:month\\d/:date\\d\'=>\'Index/index\',//动态和静态混合地址路由加上 \\d代表类型只能是数字  
    \'my/:id$\'=>\'Index/index\',// 加上$说明地址中只能是 my/1000 后面不能有其他内容了

2.正则表达式配置路由,必须以/开始   /结束

\'/^year\\/(\\d4)\\/(\\d2)\\/(\\d2)/\'=>\'Index/index?year=:1&month=:2&date=:3\'//这里\\d表示必须是数字
参考技术A

看手册默认就是一个index.php的路由模式啊,图片可能看不清

一、普通模式

关闭路由,完全使用默认的PATH_INFO方式URL:

'url_route_on'  =>  false,

路由关闭后,不会解析任何路由规则,采用默认的PATH_INFO 模式访问URL:

http://serverName/index.php/module/controller/action/param/value/...

参考技术B 配置项当中有个URL_MODEL,有三个值0,1,2。 0普通模式可也在IIS上运行,1pathinfo模式如http://localhost/index.php/index/index
2是rewrite模式需要配置可去掉index.php后缀本回答被提问者采纳
参考技术C 默认第二种啊,你的url为什么有两个index.php追问

是啊,删掉一个index.php,就能正常显示页面了,但是不知道为什么,突然多了一个,页面显示不出来,还报错:_MODULE_NOT_EXIST_:Index.php

追答

自己手残打上去的吧,你问的问题手册上面都有的,多看看手册就行了

以上是关于ThinkPHP 网址格式URL地址怎么设置~呢?的主要内容,如果未能解决你的问题,请参考以下文章

ThinkPHP函数详解:U方法

ThinkPHP函数详解:U方法

URL地址是啥

thinkphp url生成

ThinkPHP框架 _ 学习3

thinkphp 取得url参数