Nginx 自动域名重定向

Nginx 自动域名重定向

我正在尝试设置 Nginx 配置,以将指向我的静态子域 (site.domain.com) 的任何域/子域 (CNAME) 自动重定向到 /var/www 内的相应目录。该目录将以指向的域/子域命名。我不想每次有人添加新域时都使用 VirtualHost 或更改/重新启动 Nginx。

我偶然发现这个答案但我还是不太明白。我应该将什么设置为根目录?

当前配置:

server {
    server_name site.domain.com;
    listen 80 default_server;
    root /var/www/;
    index index.html index.htm;
}

答案1

rewrite  ^(.*)$  /$host/$1;

添加上面提到的重写规则。其工作原理如下。

xyz.foo.com/index.html将映射到/var/www/xyz.foo.com/index.html

需要注意的是,如果域/子域目录不存在,nginx 将抛出错误。

相关内容