tp6 下多应用路由配置

tp6 下多应用路由配置

差异

tp6 正式版的路由跟开发版/tp5 存在一些差异, 导致一些配置环境使用上的不同

配置

开启路由

config/app.php 配置文件下开启路由, with_route=true

应用映射

config/app.php 配置文件下 app_map 设置路由映射

// 应用映射(自动多应用模式有效)
    'app_map'          => [
        '*'=>'wap',
        'api'=>'api',
        'iayoo'=>'iayoo'
    ],

路由配置

config/route.php 全局路由配置文件下设置强制使用路由

'url_route_must'=>true

开启路由完全匹配

'route_complete_match'=>true

应用路由设置

多应用文件结构如下

├── app
│   ├── 应用1
│   │   └── controller
│   │       └── IndexController.php
│   ├── 应用2
│   │   └── controller
│   │       └── IndexController.php
├── route
│   └── app.php // 路由定义文件

单应用里所有的路由都在全局路由配置文件中定义, 即 route/app.php

如果开启多应用之后则需要在每个应用下分别定义相应的路由, 例如: 应用1的路由则需要在应用1 目录下新建一个 route/app.php, 用以定义应用1的路由.

示例如下:

use think\facade\Route;
Route::group(function (){
    Route::get('/', 'Index/index');
});

上述的路由表示访问 localhost/应用1 (前提是nginx做了index.php隐藏配置) 会映射到 应用1/controller/Index/index 下.

use think\facade\Route;
Route::group(function (){
    // localhost/应用1/test => 应用1/controller/Index/test
    Route::get('/test', 'Index/test'); 
});

总结

tp6 新增了多应用模式, 从架构来看是变了许多, 所以一些新的概念以及使用方式都跟 tp5 有些许差异, 需要多阅读文档和源码, 使用起来才更加趁手

另外, tp6 的视图和 orm 都独立抽离, 使用需要额外安装, 多应用视图 工具下识别路径有个注意点, 默认会识别当前应用下 view 文件夹, 如果当前应用下没有 view 文件夹则会去全局视图 项目根目录/view/应用名称 下查找.

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇