单应用、多应用、单一入口、多入口


说明

框架本身就是多应用框架,单应用只是我们人为做的一个规定

单应用

当项目比较大含有多个应用的时候(后台、PC端、H5、小程序),一般使用单应用(一个项目里面一个应用),这样可以一个人负责一个应用,
应用之间互不干扰、不冲突,方便部署。适合单一入口单应用。

应用目录

/app
  |--api        应用目录
/public
  |--.htaccess
  |--index.php  入口文件

多应用

当项目比较小,一个人就可以搞定的,就没必要搞多个项目,就一个项目里面包含多个应用就可以了。可以选择多入口多应用或者单一入口多应用

应用目录

/app
  |--admin      后台
  |--applet     小程序
  |--h5         H5
  |--web        PC端

多入口多应用(一个应用一个入口)

特点

一、可针对某个应用在入口做不同的处理

二、方便设置不同域名

/public
    |--admin
        |--index.php    [admin应用入口]
    |--applet
        |--index.php
    |--h5
        |--index.php
    |--web
        |--index.php

单一入口多应用(所有应用共用一个入口)

/public
    |--.htaccess
    |--favicon.ico
    |--index.php        [共用入口文件]
这个需要开启设置,在/config/common.config.php里面设置
'apps' => [
    'a' => 'admin',
    'web' => 'web',
    'h5' => 'h5',
],
apps 开启多应用共用单一入口,键是应用别名,值是应用名称,比如:'a' => 'admin',那么访问地址是:
http://www.timophp.com/a/控制器/操作

当然你也可以不设置别名,和应用名一样,比如:'web' => 'web',那么访问地址是:
http://www.timophp.com/web/控制器/操作

h5访问地址:http://www.timophp.com/h5/控制器/操作

设置默认应用

设置默认应用,就可以省略url里面的应用名称,如a、web、h5
框架默认设置web为默认应用,你也可以修改:
在common.config里面设置,设置默认应用是h5,这是H5的url由
http://www.timophp.com/h5/控制器/操作
变为
http://www.timophp.com/控制器/操作,省掉了h5目录
'default_app' => 'h5'