thinkphp6 强制路由不生效问题 以及Url路由去掉应用目录
1.路由不生效
TP6开启自动多应用之后再开启强制路由,这时定义的路由都是无效路由,需要在你的应用文件夹下面创建route
文件夹并在里面创建任意名称的php文件比如:app/index/route/app[可以随意自定义].php
在这个文件里面定义的路由才是可用路由,注意每个应用与应用之间的路由不是互通图的。他们可以创建一模一样的路由,访问路由的时候 会形成[域名]/index.php/[应用名]/[定义的路由]
的奇葩风格。
2.去掉Url上面的应用名
正常的TP6的入口文件
<?php
namespace think;
// 引入自动加载包
require __DIR__ . '/../vendor/autoload.php';
// 执行HTTP应用并响应
$http = (new App())->http;
$response = $http->run();
$response->send();
$http->end($response);
修改为:
<?php
namespace think;
// 引入自动加载包
require __DIR__ . '/../vendor/autoload.php';
// 执行HTTP应用并响应
$http = (new App())->http;
$response = $http->name('home')->run();
$response->send();
$http->end($response);
以上代码使用了使用->name() 绑定应用名字,这个时候index.php的入口文件只能访问一个应用,如果有多个应用则需要创建多个入口文件。
本作品采用《CC 协议》,转载必须注明作者和本文链接