我有一个子域labs.mydomain.com
,我想托管我在不同文件夹上开发的多个网络应用:labs.mydomain.com/app1
,labs.mydomain.com/app2
,labs.mydomain.com/app3
。我希望它是由文件夹分隔的同一个域,而不是为每个域创建一个新的子域,就像上面的例子一样。
问题是我在每个项目上都使用了一些框架,所以我必须将/app1
映射到/app1/public
和/app2
映射到app2/public
。
NGINX是否接受server_name
与labs.mydomain.com/app1
接触?
有可能这样做吗?如果没有,最好的替代方案是什么?
答案 0 :(得分:2)
Nginx不支持labs.mydomain.com/app1
server_name
。
但您可以使用location指令为目录配置规则。示例:
location /app1 {
alias /var/www/app1/public/;
}
location ~ ^/app1/(.+\.php)$ {
alias /var/www/app1/public/$1;
fastcgi_pass 127.0.0.1:8888;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $request_filename;
include fastcgi_params;
}