nature book bug burger costumes doctors hospital office shoes skull rocket

Nginx vhost 现有站点子目录设置站点

由于想把一个活动目录(简称B目录),挂在一个现有站点下(简称A站点),两个目录在磁盘上的位置,是同级关系。希望的效果是访问A站指定的二级目录名,能去A站所在的磁盘同级,访问B目录。

最终目标

访问这个网址 www.onehomehotel.com/party/ 达到访问下面目录的效果 /var/www/html/onehome-party/。目录在任意位置,只是挂到 /party/ 路由下。

也就是说,/party/ 放问到 /var/www/html/onehome-party/ 目录的内容。

目录结构

实现步骤

比较菜的做法

一开始试图先建立一个目录,并且尝试通过URL重写实现:

location /onehome-party {
    root /var/www/html/;
}

此处省略 rewrite 配置…

这样是可行,但是仍有写绕,并且规则让人摸不着头脑。

不那么菜的

经老同事王李提醒,改用 alias 配置:

location /party/ {
    alias /var/www/html/onehome-party/;
}

验证配置无误

nginx -t

重载配置文件

nginx -s reload

测试访问 www.onehomehotel.com/party/ 成功,目标达成!