## 多模塊支持
通常一個項目會有web網頁模塊 (www.t.com),又有api模塊 (api.t.com),每個模塊都關聯一個子域名,這時就需要框架有對多模塊的支持,ExpressPHP 的多模塊是通過 `composer` 實現的,下面演示如何配置多模塊:
## 1. 修改 `composer.json`
默認的 composer.json 如下:
~~~
{
"autoload": {
"psr-4": {
"sys\\": "system/library/",
"app\\": "application/"
}
}
}
~~~
修改為:
~~~
{
"autoload": {
"psr-4": {
"sys\\": "system/library/",
"www\\": "app_www/",
"api\\": "app_api/"
}
}
}
~~~
## 2. 更新 `composer`
~~~
cd ExpressPHP // composer.json所在目錄
php composer.phar update
~~~
## 3. 建立與命名空間對應的APP目錄
上面定義兩個命名空間與分別對應的目錄:
~~~
www 命名空間對應 app_www 目錄
api 命名空間對應 app_api 目錄
~~~
將默認的 `application` 目錄修改為 `app_www` 目錄,同時復制一份修改文件夾名稱為 `app_api`。
## 4. Apache 的子域名指向APP目錄內的 `public` 目錄
在 `httpd-vhosts.conf` 增加:
~~~
<VirtualHost *:80>
DocumentRoot "\data\www\ExpressPHP-Demo\framework\app_www\public"
ServerName www.t.com
</VirtualHost>
<VirtualHost *:80>
DocumentRoot "\data\www\ExpressPHP-Demo\framework\app_api\public"
ServerName api.t.com
</VirtualHost>
~~~