dynamic包括虚拟主机的Nginxconfiguration片段

我尝试使用nginxconfiguration虚拟主机,而不使用其他每个虚拟主机configuration。 我想到这样的事情:

server { listen 81; server_name ~^(www\.)?(?<sname>.+?)$; root /var/www/$sname; include /etc/nginx/sites/$sname; access_log /var/log/nginx/$sname/access.log; error_log /var/log/nginx/$sname/error.log; } 

然后,我可以touch /etc/nginx/mysite.example.com添加一个新的网站与静态HTML,而我可以编辑文件的虚拟主机添加例如反向代理指令或一些重写规则。

问题是,nginx似乎包括启动时的configuration。 有这样的事情会更干净

 for $config in /etc/nginx/sites: { server_name $config root /var/www/$config include $config [...] } 

它应该在开始时运行,而不是在对虚拟主机的第一个请求中运行。

我仍然不知道,如果一个脚本包括是可能的,但我现在使用jinja2作为模板系统使用脚本生成静态configuration。