## 多个子域名绑定多个模块 在大型项目中,通常使用不同的子域名指向不同的应用模块,MixPHP 由于使用 mix-httpd 替代了 php-fpm,所以配置方式与传统方式有些不同,方法如下: >[info] 假设现在要配置两个子域名指向到两个应用模块。 ~~~shell my.test.com => my模块 shop.test.com => shop模块 ~~~ ### 第一步: 在 mix-httpd 中配置多个 web 主机。 ~~~ // 虚拟主机:运行在 Server 内的 Web 应用 'virtualHosts' => [ // my模块 'my.test.com' => __DIR__ . '/../../../apps/my/config/main_httpd.php', // shop模块 'shop.test.com' => __DIR__ . '/../../../apps/shop/config/main_httpd.php', ], ~~~ ### 第二步: 为每个子域名配置 Nginx 代理。 ~~~shell server { server_name my.test.com; listen 80; root /data/mixphp/apps/my/public/; index index.html; location = / { rewrite ^(.*)$ /index last; } location / { proxy_http_version 1.1; proxy_set_header Connection "keep-alive"; proxy_set_header Host $http_host; proxy_set_header X-Real-IP $remote_addr; if (!-e $request_filename) { proxy_pass http://127.0.0.1:9501; } } } server { server_name shop.test.com; listen 80; root /data/mixphp/apps/shop/public/; index index.html; location = / { rewrite ^(.*)$ /index last; } location / { proxy_http_version 1.1; proxy_set_header Connection "keep-alive"; proxy_set_header Host $http_host; proxy_set_header X-Real-IP $remote_addr; if (!-e $request_filename) { proxy_pass http://127.0.0.1:9501; } } } ~~~ ### 第三步: 重新启动 mix-httpd 与 nginx 即可。