ThinkPHP6.0开启多应用模式需三步:安装think-multi-app扩展、配置app.php启用auto_multi_app并设default_app、重构app目录为app/index/和app/admin/等独立子目录。

ThinkPHP6.0 默认是单应用模式,开启多应用模式需要三步:安装扩展、修改配置、调整目录结构。核心不是改一两行代码,而是让框架识别“多个独立应用”的存在逻辑。
安装 think-multi-app 扩展
在项目根目录下执行命令:
- composer require topthink/think-multi-app
- 注意:必须在 你的项目目录(如
tp/)中运行,不是在 ThinkPHP 源码目录里 - 安装成功后会自动执行
service:discover和vendor:publish,生成基础多应用支持
启用多应用开关并设置默认应用
编辑 config/app.php 文件,确保包含以下两项配置:
- 'auto_multi_app' => true —— 开启多应用模式
-
'default_app' => 'index' —— 指定默认访问的应用名(如不设,默认为
index)
如果该文件不存在,可从 vendor/topthink/think-multi-app/src/config/app.php 复制一份到项目 config/ 目录下再修改。
立即学习“PHP免费学习笔记(深入)”;
重构 app 目录结构
多应用模式要求每个应用独占一个子目录,原始的 app/controller 等需迁移。例如创建 index 和 admin 两个应用:
- 新建
app/index/和app/admin/ - 把原
app/controller移入app/index/,并重命名命名空间为app\index\controller - 同理,
app/admin/controller的命名空间应为app\admin\controller - 每个子应用内可自建
config/、route/、view/等目录,实现配置与路由隔离
验证是否生效
启动内置服务器测试:
- php think run 启动服务
- 访问
http://localhost:8000/index→ 应进入 index 应用 - 访问
http://localhost:8000/admin→ 应进入 admin 应用(若已创建) - 直接访问
http://localhost:8000/→ 走default_app配置的应用
路径中的第一个段(如 /index、/admin)即为应用名,这是 TP6 多应用模式的 URL 识别机制。



















