Nginx總結(四)基於域名的虛擬主機配置

前面講了如何安裝配置Nginx,你們能夠去這裏看看nginx系列文章:https://www.cnblogs.com/zhangweizhong/category/1529997.htmlhtml

今天要說的是Nginx如何基於域名配置虛擬主機。nginx

須要說明的是:因爲本文章是nginx系列文章中的一篇,文章裏面不少其餘的配置,可能前面的文章已經說講過,而後後續就沒有在介紹,若是出現有些配置沒有講,你們可能須要去看看前面的文章。服務器

 

應用場景

兩個域名指向同一臺nginx服務器,用戶訪問不一樣的域名顯示不一樣的網頁內容。網絡

兩個域名是aaa.test.com和bbb.test.com測試

nginx服務器使用虛擬機192.168.78.132url

 

準備環境

1. 建立192.168.78.132虛擬機,保證本地電腦和虛擬網絡通暢。spa

2. 在192.168.78.132上安裝nginx。3d

3. 經過host文件指定aaa.test.com和bbb.test.com對應192.168.78.132虛擬機:code

修改window的hosts文件:(C:\Windows\System32\drivers\etc)server

192.168.78.132 aaa.test.com
192.168.78.132 bbb.test.com

 

html目錄建立

1. 在192.168.78.132上建立/usr/local/aaa_html,此目錄爲aaa.test.com域名訪問的目錄

2. 在192.168.78.132上建立/usr/local/bbb_html,此目錄爲bbb.test.com域名訪問的目錄

3. 將/usr/local/nginx/html中的內容拷貝分別拷貝到上邊兩個目錄中,爲了方便測試須要修改每一個目錄下的index.html內容使之個性化。

 

配置虛擬主機

修改/usr/local/nginx/conf/nginx.conf文件,添加兩個虛擬主機,以下:

#配置虛擬主機aaa.test.com
server {

    #監聽的ip和端口,配置本機ip和端口
    listen 192.168.78.132:80;         

    #虛擬主機名稱是aaa.test.com,請求域名aaa.test.com的url將由此server配置解析
    server_name aaa.test.com;  

    #全部的請求都以/開始,全部的請求均可以匹配此location
    location / {
        #使用root指令指定虛擬主機目錄即網頁存放目錄
        #好比訪問http://ip/test.html將找到/usr/local/aaa_html/test.html

        #好比訪問http://ip/item/test.html將找到/usr/local/aaa_html/item/test.html
        root /usr/local/aaa_html;       

        #指定歡迎頁面,按從左到右順序查找
        index index.html index.htm;   
    }
}

#配置虛擬主機bbb.test.com
server {
    listen 192.168.78.132:80;
    server_name bbb.test.com;

    location / {
        root /usr/local/bbb_html;
        index index.html index.htm;
    }
}

 

測試

分別訪問aaa.test.com、bbb.test.com,看效果如何: 

 

 

最後

以上, 就把nginx基於域名的虛擬主機配置說完了。經過這三篇文章,介紹了nginx配置虛擬主機的三種方式,分別是基於ip 的虛擬主機配置,基於端口的虛擬主機配置和基於域名的虛擬主機配置。

其中最經常使用的仍是基於域名的虛擬主機配置。

相關文章
相關標籤/搜索