ThinkPHP6多应用模式下路由优化实战指南
一、多应用模式的价值
ThinkPHP6的多应用模式允许将不同业务模块拆分为独立应用,特别适合中大型项目开发。相比单应用模式,它具有以下优势:
- 代码隔离更清晰
- 独立配置更灵活
- 便于团队协作开发
- 资源按需加载
二、路由配置核心技巧
1. 基础路由配置
// app/admin/route/app.php
use thinkfacadeRoute;
Route::group('admin', function(){
Route::get('dashboard', 'Index/dashboard');
Route::resource('article', 'Article');
})->middleware('AdminAuth');
2. 动态子域名绑定
// config/app.php
return [
'domain_bind' => [
'admin' => 'admin', // admin.domain.com → admin应用
'api' => 'api' // api.domain.com → api应用
]
];
三、实战案例:电商系统路由设计
项目结构
www/
├─app/
│ ├─admin/ # 后台管理
│ ├─api/ # 接口服务
│ ├─mobile/ # 移动端
│ └─... # 其他应用
典型路由配置
// app/api/route/app.php
Route::group('v1', function(){
// 商品相关
Route::get('products/:id', 'Product/detail')
->pattern(['id' => 'd+']);
// 用户认证
Route::post('login', 'Auth/login');
Route::post('logout', 'Auth/logout')
->middleware('ApiAuth');
});
四、性能优化建议
- 使用路由缓存:
php think optimize:route
- 合理分组减少匹配次数
- 高频路由前置定义
- 避免过度复杂的正则匹配