我们只有一个服务器块。我之前使用的是 server_name,并且一直在向其中添加域名。
server_name example.com example.net hiscompany.org mycompany.net;
这些只是少数,但数量还在增长。在我的计算机上,我重新创建了配置,但我删除server_name
并重新启动了 Nginx。为了进行测试,我将所有 10 个不同的域名或 FQDN 添加到我的 /etc/hosts 文件中。我使用我在 /etc/hosts 文件中定义的每个 FQDN 测试了我们的前端应用程序。我能够加载网站,效果非常好。我并不关心内容,因为对于我们将使用的所有不同 FQDN,将提供的内容都是相同的。
您认为删除 的这种配置存在问题吗server_name
?如果我继续将 fqdn 添加到server_name
,配置就会看起来很乱。
答案1
这种方法唯一的问题是,nginx 将为其配置中未明确定义的任何域名提供内容。此外,在这种情况下,我将使用“默认”server_name,其定义为:
listen <port> default_server;
server_name _;
否则,它可能会产生误导,而且我也不确定当您定义的服务器部分没有 server_name 指令,并且服务器具有“默认”server_name 时,nginx 如何处理规则。server_name 也可以定义为通配符或使用正则表达式,但就您的情况而言,这无济于事。