2014-10-04 33 views
0

這裏的問題,我建nginx的版本1.7.6(我曾與1.4.2相同)我需要管理的以下領域:nginx的 - 服務器名稱 - 如何序列此事

  • mydomain.company
  • api.mydomain.company
  • 其中只有一個是由HTTP服務
  • secure.mydomain.company
  • www.mydomain.company

和所有其他重定向到https,在這裏我發佈我的nginx.conf文件(我把所有內部測試我知道的網站 - 可用),但問題是,當我添加api.mysite.company部分管理所有的請求爲什麼?

#user nobody; 
    worker_processes 1; 

    events { 
     worker_connections 1024; 
    } 

    http { 
     include  mime.types; 
     default_type application/octet-stream; 
     sendfile  on; 
     #tcp_nopush  on; 

     #keepalive_timeout 0; 
     keepalive_timeout 65; 

     #gzip on; 

    #################### api_backend ############################### 

    upstream api_backend { 

      server 127.0.0.1:3000; 
      server 127.0.0.1:3001 backup; 
     } 

    ##################### api.mysite.company ############################ 

    server { 
     listen 80; 
     server_name api.mysite.company; 

     location/{ 
       proxy_pass http://api_backend; 
     } 

    } 

########################## mysite.company (80) ######################### 

    server { 
     listen  80; 
     server_name mycompany.company secure.mycompany.company; 
    return 301 https://$host$request_uri; 
    } 

############################### HTTPS ################################# 

    server { 
     listen  443 ssl; 
     server_name mycompany.company secure.mycompany.company www.mycompany.company; 

     ssl_certificate  /var/local/myc.crt; 
     ssl_certificate_key /var/local/myc.pem; 

     ssl_session_cache shared:SSL:1m; 
     ssl_session_timeout 5m; 
    ssl_protocols SSLv3 TLSv1 TLSv1.1 TLSv1.2; 
     ssl_ciphers HIGH:!aNULL:!MD5; 
     ssl_prefer_server_ciphers on; 

     location/{ 
      root mycompany/secure; 
      index index.html; 
     } 
    } 
} 

如果招### mysite.company(80)####之上的樣子作品好節,但似乎在某個時候將服務器名稱衝突養!

回答

0

如果server_name有多個匹配項,則nginx將使用第一個匹配項。檢查您的配置在網站可用目錄中的評估順序。