nginx与几个域共享一个服务器(子域redirect)

我有一个服务器,我想承载两个Web应用程序(例如一个站点和一个Web应用程序)和一个新手与Nginx(和WebHosting)。

我有:

  • 一个Web服务器(可以使用http://server.name访问)
  • 主站点地址(main.site.name或www.main.site.name)。 其内容位于/usr/share/nginx/www.main.site.name的服务器上
  • 一个具有特定地址的networking应用程序(subdomain.other.site)。 它的内容在/usr/share/nginx/test的服务器上

我使用这个configuration我的主站点:

  server { server_name .main.site.name; root /usr/share/nginx/www.main.site.name; index index.html index.htm; location / { try_files $uri $uri/ /index.html; } location ~ \.php$ { fastcgi_split_path_info ^(.+\.php)(/.+)$; fastcgi_pass unix:/var/run/php5-fpm.sock; fastcgi_index index.php; include fastcgi_params; } } 

我使用这个configuration我的wab应用程序,但它不起作用:

  server { listen subdomain.other.site:80; server_name subdomain.other.site; root /usr/share/nginx/test; index index.html index.htm; location / { try_files $uri $uri/ /index.html; } location ~ \.csv$ { alias /usr/share/nginx/test/$uri; } } 

此configuration始终显示/usr/share/nginx/www.main.site.name中的index.html

我怎样才能重写我的configuration,使之工作? 我应该使用重写指令,但如何?

默认网站:

 server { listen 80 default_server; server_name _; # .... } 

然后,对于每个特定的已知站点:

 server { listen 80; server_name .main.site.name; # .... } server { listen 80; server_name subdomain.other.site; # .... }