nginx-基於域名的虛擬主機

nginx-基於域名的虛擬主機

 

1. 問題

情景:html

  有一臺雲主機和一個域名xxx.cn(多個解析記錄),在服務器上部署了一個blog項目,要實現經過blog.xxx.cn才能訪問到這個項目。nginx

 

解析記錄有:服務器

  

 

nginx配置文件(關鍵代碼):spa

...

server {
        listen       80;
        server_name  blog.xxx.cn;
        location / {
            proxy_pass http://0.0.0.0:8001; # blog項目使用端口
        }
}

server {
        listen       80;
        server_name  xxx.cn;
        location / {
            root   html;
            index  index.html index.htm;
        }
}

...

 

效果爲:code

  除了xxx.cn外,blog.xxx.cn、test.xxx.cn、www.xxx.cn都能訪問到blog項目。server

 

2. 解決方法

  將上述nginx配置文件(關鍵代碼)中的兩個server交換位置htm

 

3. 總結

  nginx基於域名的虛擬主機,當域名不在配置的server中時,會使用第一個server。blog

 

歡迎交流

  若有錯誤,歡迎大佬指出。若有其它見解,期待一塊兒交流。部署

相關文章
相關標籤/搜索