Nginx:数千个 server_name

Fre*_*red 12 nginx

如何在不创建数千个外部配置文件或编写很长的 server_name 行的情况下将 Nginx 限制为数千个不同的 server_name ?

确实,我希望 Nginx 仅作为 server1.com、server2.com 等的反向代理...

对我来说最好的解决方案是拥有一个包含我受限 server_names 的外部配置文件:server1.com、server2.com 等...

是否可以 ?


好的,感谢您的回答,它无需注册即可工作。表达式。正如 kolbijack 所解释的,只是一个大的 server_name 列表。谢谢。

kol*_*ack 19

您可以将 server_name 指令单独放在一个文件中,然后将其从您的服务器块中包含:

# example.com.conf
server {
  include /path/to/server_names;
  ...
}

# /path/to/server_names
server_name
  example.com
  domain.com
  foo.com
;
Run Code Online (Sandbox Code Playgroud)

server_names 文件只需要顶部的 server_name 和 ; 在底部是一个有效的指令。


One*_*roi 7

块中的server_name声明server {}可以是正则表达式,这应该允许您在设置模式中匹配 server_name s。

更多信息可以在这里看到:http : //nginx.org/en/docs/http/server_names.html#regex_names