将任何子域转发到单个服务器

将任何子域转发到单个服务器

拥有网站example.com

如何配置 Nginx 区域文件,以便每个子域名(如 test.example.com 等)都转发到一台服务器。

问题是我事先不知道可能的子域,所以我无法手动列出它们。

答案1

您定义一个默认服务器块:

server {
    listen 80 default_server;
    server_name _;

    return 301 http://example.com;
}

这会影响服务器上的每个域,而不仅仅是选定服务器的子域。如果不枚举所有这些域,则无法将其限制到特定子域。

答案2

server_name _; 和 listen 配置上的 default_server 就是您要寻找的。

服务器 {

听 80 默认服务器;服务器名称 _;

root /var/www/default; (或其他任何地方)

}

相关内容