Nginx | 所有子域webmmail。*。*到一个文档根目录

事先我想说明的是,我已经浏览了Nginx wiki。 之前询问Stackoverflow和Servervault。

我有我的nginxconfiguration的麻烦。 这是我的configuration

server { listen 8080; root /opt/apanel/apps/webmail; index index.php index.html index.htm; server_name webmail.*.*; location / { try_files $uri $uri/ /index.php?$args; } location ~* \.php$ { fastcgi_index index.php; fastcgi_pass unix:/var/run/php5-fpm.sock; include fastcgi_params; } } 

我希望所有的networking邮件子域显示一个文档根目录的oint。

从我的错误日志中的行:

^ [[1; 5A2014 / 07/20 19:44:41 [emerg] 9276#0:无效的服务器名称或通配符“admin 。。 ”on 0.0.0.0:8080

有谁知道如何做到这一点?

来自nginx的文档 :

通配符名称只能在名称的开始或结束处包含星号,并且只能在点边界上。 名称www.*.example.orgw*.example.org是无效的。 但是,可以使用正则expression式来指定这些名称,例如~^www\..+\.example\.org$~^w.*\.example\.org$

您将需要使用正则expression式匹配您的server_name,如:

 server_name ~^webmail\..*\..*$;