Nginx基于多個(gè)ip的虛擬主機(jī)的詳細(xì)配置
前言
nginx可以基于ip地址配置虛擬主機(jī),還可以基于端口和域名來配置虛擬主機(jī),框架步驟都是一樣的,只是配置代碼有些許不同,這里只詳細(xì)介紹基于ip地址的配置方法,文章最后,我會(huì)附上基于端口和域名來配置虛擬主機(jī)的代碼,以供參考
nginx配置虛擬主機(jī)的好處
服務(wù)器資源優(yōu)化:在一臺(tái)服務(wù)器上托管多個(gè)網(wǎng)站,充分利用服務(wù)器的硬件資源,避免為每個(gè)網(wǎng)站單獨(dú)部署服務(wù)器,從而降低成本。
提高服務(wù)器利用率:使服務(wù)器的處理能力和存儲(chǔ)空間得到更充分的利用,避免資源閑置。
增強(qiáng)安全性:不同虛擬主機(jī)之間相互隔離,降低了一個(gè)網(wǎng)站受到攻擊而影響其他網(wǎng)站的風(fēng)險(xiǎn)。
靈活的配置管理:可以為每個(gè)虛擬主機(jī)定制獨(dú)特的配置,如訪問控制規(guī)則、緩存策略、錯(cuò)誤處理等,滿足各個(gè)網(wǎng)站的特定需求。
便于維護(hù)和擴(kuò)展:集中管理虛擬主機(jī)的配置,使得添加新的網(wǎng)站或修改現(xiàn)有網(wǎng)站的配置更加便捷。當(dāng)需要擴(kuò)展服務(wù)器容量時(shí),也能更輕松地進(jìn)行調(diào)整。
節(jié)省 IP 資源:無需為每個(gè)網(wǎng)站分配獨(dú)立的 IP 地址,通過域名就能區(qū)分不同的網(wǎng)站
配置步驟
1.配置新的網(wǎng)絡(luò)ip及接口
[root@localhost ~]# ifconfig ens33:1 192.168.198.140 netmask 255.255.255.0 broadcast 192.168.198.255 up [root@localhost ~]# ifconfig ens33:2 192.168.198.141 netmask 255.255.255.0 broadcast 192.168.198.255 up [root@localhost ~]# ifconfig #查看網(wǎng)絡(luò)接口信息
釋:
可以看到,新添加了兩個(gè)網(wǎng)絡(luò)接口和ip地址,想配置多個(gè),修改上述命令紅色字體的編號(hào)。這種方法只是臨時(shí)的,重啟后會(huì)失效,若要永久生效,需要在相應(yīng)的網(wǎng)絡(luò)配置文件中進(jìn)行設(shè)置
2.基于ip地址的虛擬主機(jī)的代碼配置
[root@localhost conf]# mkdir extra #在主配置文件nginx.conf的同級(jí)目錄conf下創(chuàng)建extra目錄
[root@localhost extra]# touch 140.conf [root@localhost extra]# touch 141.conf #在extra目錄下創(chuàng)建兩個(gè)文件,用來存放基于ip的虛擬主機(jī)配置
#在140.conf下添加如上代碼
釋:
在141.conf下添加如上代碼,當(dāng)用戶通過 192.168.198.141
訪問該服務(wù)器的 80 端口時(shí),Nginx 會(huì)從 /www/141
目錄提供服務(wù),并優(yōu)先尋找 index.html
或 index.htm
作為默認(rèn)頁(yè)面
3.修改nginx.conf主配置文件
釋:在http()標(biāo)簽中的最后一行,添加如下參數(shù),讓extra目錄下的配置參數(shù),導(dǎo)入到nginx.conf中,讓nginx主配置文件,看起來簡(jiǎn)潔清晰 ,不寫絕對(duì)路徑是因?yàn)閑xtra文件夾和nginx.conf文件夾為相對(duì),都在同一文件夾下
釋:修改本機(jī)地址135的server配置參數(shù),如上圖所示當(dāng)192.168.198.135的請(qǐng)求到來,讓nginx去/www/135文件夾下尋找資料
4.檢查nginx語(yǔ)法
[root@localhost ~]# nginx -t
5.重新加載nginx配置
[root@localhost ~]# nginx -s reload
6.創(chuàng)建網(wǎng)站根目錄,并添加站點(diǎn)內(nèi)容
在根下創(chuàng)建www目錄,在www下創(chuàng)建135 140 141 目錄,分別用來存放各個(gè)服務(wù)器站點(diǎn)的內(nèi)容
[root@localhost www]# echo "i'm 135,hello man." > /www/135/index.html [root@localhost www]# echo "i'm 140,hello man." > /www/140/index.html [root@localhost www]# echo "i'm 141,hello man." > /www/141/index.html #在各站點(diǎn)分別存入內(nèi)容
7.測(cè)試
釋:
打開瀏覽器,輸入自己搭建的服務(wù)器ip地址,查看是否顯示自己添加的站點(diǎn)內(nèi)容
nginx基于域名的配置示例
釋:
在上述配置中,定義了兩個(gè)虛擬主機(jī)。每個(gè)虛擬主機(jī)的配置如下:
listen 80
:表示監(jiān)聽 80 端口。server_name
:指定虛擬主機(jī)對(duì)應(yīng)的域名,如www.example1.com
和www.example2.com
,你需要將其修改為你實(shí)際擁有的域名。root
:指定該域名對(duì)應(yīng)的網(wǎng)站根目錄,即存放網(wǎng)站文件的路徑。location / {... }
:用于進(jìn)一步配置該虛擬主機(jī)的行為,這里使用try_files
指令來嘗試提供請(qǐng)求的文件,如果找不到則返回 404 錯(cuò)誤。
nginx基于端口的配置示例
釋:
在上述配置中,創(chuàng)建了兩個(gè)基于不同端口的虛擬主機(jī)。
- 第一個(gè)虛擬主機(jī)監(jiān)聽 8080 端口,網(wǎng)站根目錄為
/var/www/port8080
。 - 第二個(gè)虛擬主機(jī)監(jiān)聽 8081 端口,網(wǎng)站根目錄為
/var/www/port8081
。
您需要將上述示例中的網(wǎng)站根目錄路徑修改為您實(shí)際存放網(wǎng)站文件的路徑。
保存配置文件后,重新加載 Nginx 以使配置生效。
到此這篇關(guān)于Nginx基于多個(gè)ip的虛擬主機(jī)的詳細(xì)配置的文章就介紹到這了,更多相關(guān)Nginx 多ip虛擬主機(jī)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
nginx反向代理下的長(zhǎng)連接實(shí)現(xiàn)
本文主要介紹了Nginx反向代理下的長(zhǎng)連接實(shí)現(xiàn),包括客戶端到Nginx和Nginx到后端服務(wù)器之間的長(zhǎng)連接設(shè)置,具有一定的參考價(jià)值,感興趣的可以了解一下2024-11-11nginx+iis實(shí)現(xiàn)簡(jiǎn)單的負(fù)載均衡
這篇文章主要為大家詳細(xì)介紹了nginx+iis實(shí)現(xiàn)一個(gè)簡(jiǎn)單的負(fù)載均衡的方法,感興趣的小伙伴們可以參考一下2016-03-03Nginx 轉(zhuǎn)發(fā)匹配規(guī)則的實(shí)現(xiàn)
這篇文章主要介紹了Nginx 轉(zhuǎn)發(fā)匹配規(guī)則的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-03-03詳解Nginx靜態(tài)服務(wù)配置(root和alias指令)
這篇文章主要介紹了詳解Nginx靜態(tài)服務(wù)配置(root和alias指令),小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2019-01-01nginx如何設(shè)置服務(wù)器響應(yīng)時(shí)間長(zhǎng)短
本文主要介紹了nginx如何設(shè)置服務(wù)器響應(yīng)時(shí)間長(zhǎng)短,主要介紹了兩種方法,具有一定的參考價(jià)值,感興趣的可以了解一下2023-09-09nginx反向代理用做內(nèi)網(wǎng)域名轉(zhuǎn)發(fā)
這篇文章主要為大家詳細(xì)介紹了nginx反向代理用做內(nèi)網(wǎng)域名轉(zhuǎn)發(fā),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-10-10