ThinkPHP 6 安裝和多應用配置
一、安裝
1.ThinkPHP6.0的環境要求如下:
PHP >= 7.1.0
6.0版本開始,必須通過Composer方式安裝和更新,所以你無法通過Git下載安裝。
2.安裝Composer
1)如果還沒有安裝 Composer,在 Linux 和 Mac OS X 中可以執行如下命令:
curl -sS https://getcomposer.org/installer | php
mv composer.phar /usr/local/bin/composer
2)在 Windows 中,你需要下載並執行 Composer-Setup.exe。
如果遇到任何問題或者想更深入地學習 Composer,請參考Composer 文件(英文文件,中文文件)。
.由於眾所周知的原因,國外的網站連線速度很慢。因此安裝的時間可能會比較長,我們建議使用國內映象(阿里雲)。
開啟命令列視窗(windows使用者)或控制檯(Linux、Mac 使用者)並執行如下命令:
composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/
3.安裝穩定版
如果你是第一次安裝的話,在命令列下面,切換到你的WEB根目錄下面並執行下面的命令:
composer create-project topthink/think tp
這裡的tp目錄名你可以任意更改,這個目錄就是我們後面會經常提到的應用根目錄。
如果你之前已經安裝過,那麼切換到你的應用根目錄下面,然後執行下面的命令進行更新:
composer update topthink/framework
4.開啟除錯模式
應用預設是部署模式,在開發階段,可以修改環境變數APP_DEBUG開啟除錯模式,上線部署後切換到部署模式。
本地開發的時候可以在應用根目錄下面定義.env檔案。
5.測試執行
現在只需要做最後一步來驗證是否正常執行。
進入命令列下面,執行下面指令:
php think run
在瀏覽器中輸入地址:
http://localhost:8000/
會看到歡迎頁面。恭喜你,現在已經完成ThinkPHP6.0的安裝!
二、多應用部署
1.注意事項
多應用模式部署前,記得刪除app目錄下的controller目錄(系統根據該目錄作為判斷是否單應用的依據)。
在實際的部署中,請確保只有public目錄可以對外訪問。
2.多應用模式配置
1)如果要使用多應用模式,你需要安裝多應用模式擴充套件think-multi-app。
composer require topthink/think-multi-app
2)然後你的應用目錄結構需要做如下調整,主要區別在app目錄增加了應用子目錄,然後配置檔案和路由定義檔案都納入應用目錄下。
├─app 應用目錄
│ ├─index 主應用
│ │ ├─controller 控制器目錄
│ │ ├─model 模型目錄
│ │ ├─view 檢視目錄
│ │ ├─config 配置目錄
│ │ ├─route 路由目錄
│ │ └─ ... 更多類庫目錄
│ │
│ ├─admin 後臺應用
│ │ ├─controller 控制器目錄
│ │ ├─model 模型目錄
│ │ ├─view 檢視目錄
│ │ ├─config 配置目錄
│ │ ├─route 路由目錄
│ │ └─ ... 更多類庫目錄
│
├─public WEB目錄(對外訪問目錄)
│ ├─admin.php 後臺入口檔案
│ ├─index.php 入口檔案
│ ├─router.php 快速測試檔案
│ └─.htaccess 用於apache的重寫
│
├─config 全域性應用配置目錄
├─runtime 執行時目錄
│ ├─index index應用執行時目錄
│ └─admin admin應用執行時目錄
從目錄結構可以看出來,每個應用相對保持獨立,並且可以支援多個入口檔案,應用下面還可以通過多級控制器來維護控制器分組。
3)增加應用入口
允許為每個應用建立單獨的入口檔案而不通過index.php入口檔案訪問多個應用,例如建立一個admin.php入口檔案來訪問admin應用。
// [ 應用入口檔案 ]
namespace think;
require __DIR__ . '/../vendor/autoload.php';
// 執行HTTP應用並響應
$http = (new App())->http;
$response = $http->run();
$response->send();
$http->end($response);
使用下面的方式訪問admin應用:
http://serverName/admin.php
相關文章
- ThinkPHP6 核心分析(五):多應用解析PHP
- ThinkPHP6 原始碼閱讀(五):多應用解析PHP原始碼
- Linux 安裝配置應用- GitLinuxGit
- Nginx的安裝和多域名配置Nginx
- thinkphp6多資料庫配置記錄PHP資料庫
- PIG安裝配置及案例應用
- Nginx的安裝和多域名配置的實現方法Nginx
- 安裝和配置sendmailAI
- ThinkPHP6 核心分析之應用程式初始化PHP
- ThinkPHP6 原始碼分析之應用初始化PHP原始碼
- 11. Oracle for Linux安裝和配置——11.2. Linux安裝和配置——11.2.2.Linux安裝(1)OracleLinux
- 11. Oracle for Linux安裝和配置——11.2. Linux安裝和配置——11.2.2.Linux安裝(2)OracleLinux
- 11. Oracle for Linux安裝和配置——11.2. Linux安裝和配置——11.2.5. Linux配置OracleLinux
- Jemeter-安裝和配置
- (MAC) PHP安裝和配置MacPHP
- Flutter的安裝和配置Flutter
- Barrier 的安裝和配置
- Kibana 和 Logstash 安裝配置
- CentOS 6 安裝MAVEN及系統配置CentOSMaven
- thinkphp8的安裝PHP
- 11. Oracle for Linux安裝和配置—11.3. Oracle安裝和配置—11.3.1. Oracle軟體安裝OracleLinux
- 11. Oracle for Linux安裝和配置—11.3. Oracle安裝和配置—11.3.3. Oracle net配置OracleLinux
- CentOS6下mysql的安裝與配置CentOSMySql
- Java安裝和環境配置Java
- nvm-windows安裝和配置Windows
- Gin 框架 - 安裝和路由配置框架路由
- Linux 7安裝和配置phpmyadminLinuxPHP
- [實踐]wireguard安裝和配置
- vue測試安裝和配置Vue
- nodejs和npm安裝與配置NodeJSNPM
- Python 下載安裝和配置Python
- nodejs下載、安裝和配置NodeJS
- 使用Docker安裝應用Docker
- Flowable UI應用安裝UI
- 11. Oracle for Linux安裝和配置——11.2. Linux安裝和配置——11.2.1. 簡介OracleLinux
- ThinkPHP6 原始碼閱讀(三):應用程式初始化PHP原始碼
- ubuntu20安裝docker、redis、mysql及部署net6應用UbuntuDockerRedisMySql
- CentOS 下多版本 PHP 的安裝與配置CentOSPHP