前面講了如何安裝配置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
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 的虛擬主機配置,基於端口的虛擬主機配置和基於域名的虛擬主機配置。
其中最經常使用的仍是基於域名的虛擬主機配置。