本文目录一览:
- 1、thinkPHP 5 我定义这个路由规则,怎么不管用
- 2、thinkphp5 路由怎么写
- 3、tp5路由模式有哪三种
- 4、ThinkPHP5静态地址路由和动态路由的区别?
- 5、如何在nginx安装thinkphp5并且开启路由
thinkPHP 5 我定义这个路由规则,怎么不管用
不知道你是字母定义路由规则的。
只能给你建议下,路由规则与路径不匹配。
根据你的访问参数来进行不同的定义。
thinkphp5 路由怎么写
点击4个不同的路由地址,可以查看当前的路由情况。
路由到read操作
路由到archive操作
项目配置文件中的路由定义如下:
//启用路由功能
'URL_ROUTER_ON'=true,
//路由定义
'URL_ROUTE_RULES'= array(
'blog/:year\d/:month\d'='Blog/archive', //规则路由
'blog/:id\d'='Blog/read', //规则路由
'blog/:cate'='Blog/category', //规则路由
'/(\d+)/' = 'Blog/view?id=:1',//正则路由
),
在模板文件中,我们使用了U函数动态生成路由地址:
路由1:blog/curd
路由2:blog/5
路由3:blog/2012/09
路由4:100这样试试呢希望能帮到你,我去后盾网忙活我的了,加油(=^▽^=)
tp5路由模式有哪三种
tp5有三大路由模式,普通模式、混合模式和强制模式。
普通模式:只能使用
PATH_INFO
的方式访问,所有路由规则均失效。
混合模式:也是tp5默认的模式,如果为一个地址定义了路由规则,则必须使用该规则访问(
PATH_INFO
方式失效),如果没有定义路由规则,则按照
PATH_INFO
方式访问即可。
比如我们为
在Rout.php路由规则文件中定义了路由规则(原文来自tongpankt.com)
think\Route::rule('demo','index/Index/demo');
那么我们就必须使用定义好的路由规则进行访问:
如果你为一个地址定义好了路由,却不使用定义好的规则访问,就会报错。
也就是说:
是错的。(当然上线的时候我们会被public和index.php也给隐藏掉)
强制模式:顾名思义,全站所有地址必须定义路由规则,并且必须使用定义好的路由规则访问,不得使用
ThinkPHP5静态地址路由和动态路由的区别?
静态路由:指的是路由是固定的,是在配置文件里面固定好的。
动态路由:路由带有参数或者使用正则表达式进行匹配。
两者都是在配置文件中进行设置,最大的区别就是静态路由是固定的,一条路由规则匹配一条url,而动态路由就是一条路由匹配多多条url,简单来说。静态路由是一对一,动态路由是一对多。
如何在nginx安装thinkphp5并且开启路由
上面的回答纯属搞笑!安装thinkphp就不说了,自己去官网找
由于nginx不支持pathinfo,导致TP5用路由访问时会报404。
解决办法,找到nginx下虚拟主机的配置文件,一般是在/usr/ local/ nginx/ conf/ vhost/ 域名.conf
在中间加上一段代码
location / {
if (!-e $request_filename) {
rewrite ^(.*)$ /index.php?s=$1 last;
break;
}
}