├─app 应用目录│├─index主应用││├─controller控制器目录││├─model 模型目录││├─view视图目录││├─config配置目录││├─route 路由目录││└─ ...更多类库目录││ │├─admin后台应用││├─controller控制器目录││├─model 模型目录││├─view视图目录││├─config配置目录││├─route 路由目录││└─ ...更多类库目录│├─publicWEB目录(对外访问目录)│├─admin.php后台入口文件│├─index.php入口文件│├─router.php 快速测试文件│└─.htaccess用于apache的重写│├─config全局应用配置目录├─runtime 运行时目录│├─indexindex应用运行时目录│└─adminadmin应用运行时目录
因为对单应用和多应用的区分并不是很明确,主要是刚刚接触这个东西也不太懂,按我个人的理解,按多应用开发可能更好维护代码吧,所以就试试吧,反正都是学习!
1.安装多应用拓展支持
composer require topthink/think-multi-app
2.创建admin和web应用
php think build adminphp think build web
3.删除app目录下原有的controller文件夹
4.分别访问admin和web应用
5.但是默认应用index已经删除了,所以直接访问域名会出现控制器不存在的报销
6.更改默认应用根目录/config/app.php,把默认应用从index改成web
7.apache下隐藏index.php,让访问域名更加好看一点-->根目录/public/.htaccess,添加以下代码
<IfModule mod_rewrite.c>RewriteEngine OnRewriteBase /RewriteRule ^index\.php$ - [L]RewriteCond %{ENV:REDIRECT_STATUS} ^$RewriteCond %{REQUEST_FILENAME} !-fRewriteCond %{REQUEST_FILENAME} !-dRewriteRule . /index.php [L]</IfModule>
8.nginx下隐藏index.php,直接在phpstudy下配置伪静态
location / {if (!-e $request_filename) { rewrite^(.*)$/index.php?s=/$1last;}}