- 工信部備案號 滇ICP備05000110號-1
- 滇公安備案 滇53010302000111
- 增值電信業(yè)務(wù)經(jīng)營許可證 B1.B2-20181647、滇B1.B2-20190004
- 云南互聯(lián)網(wǎng)協(xié)會理事單位
- 安全聯(lián)盟認(rèn)證網(wǎng)站身份V標(biāo)記
- 域名注冊服務(wù)機(jī)構(gòu)許可:滇D3-20230001
- 代理域名注冊服務(wù)機(jī)構(gòu):新網(wǎng)數(shù)碼
nginx 虛擬主機(jī)原理和配置
虛擬主機(jī)與域名解析
虛擬主機(jī)使用特殊的軟硬件技術(shù),把一臺運(yùn)行在因特網(wǎng)上的服務(wù)器主機(jī)分成一臺臺“虛擬”的主機(jī),每一臺虛擬主機(jī)都具有獨(dú)立的域名,具
有完整的 Internet 服務(wù)器(WWW、FTP、Email 等)功能,虛擬主機(jī)之間完全獨(dú)立,并可由用戶自行管理,在外界看來,每一臺虛擬主機(jī)
和一臺獨(dú)立的主機(jī)完全一樣。
域名解析就是域名到 IP 地址的轉(zhuǎn)換過程,IP 地址是網(wǎng)路上標(biāo)識站點(diǎn)的數(shù)字地址,為了簡單好記,采用域名來代替 ip 地址標(biāo)識站點(diǎn)地址,。
域名的解析工作由 DNS 服務(wù)器完成。
虛擬主機(jī)原理
虛擬主機(jī)是為了在同一臺物理機(jī)器上運(yùn)行多個(gè)不同的網(wǎng)站,提高資源利用率引入的技術(shù)。
一般的 web 服務(wù)器一個(gè) ip 地址的 80 端口只能正確對應(yīng)一個(gè)網(wǎng)站。web 服務(wù)器在不使用多個(gè) ip 地址和端口的情況下,如果需要支持多個(gè)
相對獨(dú)立的網(wǎng)站就需要一種機(jī)制來分辨同一個(gè) ip 地址上的不同網(wǎng)站的請求,這就出現(xiàn)了主機(jī)頭綁定的方法。簡單的說就是,將不同的網(wǎng)
站空間對應(yīng)不同的域名,以連接請求中的域名字段來分發(fā)和應(yīng)答正確的對應(yīng)空間的文件執(zhí)行結(jié)果。舉個(gè)例子來說,一臺服務(wù)器 ip 地址為
10.0.0.12,有兩個(gè)域名和對應(yīng)的空間在這臺服務(wù)器上,使用的都是 10.0.0.12 的 80 端口來提供服務(wù)。如果只是簡單的將兩個(gè)域名 A 和 B
的域名記錄解析到這個(gè) ip 地址,那么 web 服務(wù)器在收到任何請求時(shí)反饋的都會是同一個(gè)網(wǎng)站的信息,這顯然達(dá)不到要求。接下來我們使
用主機(jī)頭綁定域名 A 和 B 到他們對應(yīng)的空間文件夾 C 和 D。當(dāng)含有域名 A 的 web 請求信息到達(dá) 10.0.0.12 時(shí),web 服務(wù)器將執(zhí)行它對應(yīng)
的空間 C 中的首頁文件,并返回給客戶端,含有域名 B 的 web 請求信息同理,web 服務(wù)器將執(zhí)行它對應(yīng)的空間 D 中的首頁文件,并返回
給客戶端,所以在使用主機(jī)頭綁定功能后就不能使用 ip 地址訪問其上的任何網(wǎng)站了,因?yàn)檎埱笮畔⒅胁淮嬖谟蛎畔?,所以會出錯(cuò)。
虛擬主機(jī)的配置
方式一:監(jiān)聽不同域名
配置nginx.conf
# 在http模塊下添加多個(gè)server,監(jiān)聽不同的域名
...
http {
...
# 虛擬主機(jī)test80.xlyw.top
server {
#監(jiān)聽端口
listen 80;
#域名,可以有多個(gè),用空格隔開
server_name test80.xlyw.top;
#配置根目錄以及默認(rèn)頁面
location / {
root /www/test80;
index index.html index.htm;
}
#出錯(cuò)頁面配置
error_page 500 502 503 504 /50x.html;
#/50x.html文件所在位置
location = /50x.html {
root html;
}
}
# 虛擬主機(jī)test81.xlyw.top
server {
#監(jiān)聽端口
listen 80;
#域名,可以有多個(gè),用空格隔開
server_name test81.xlyw.top;
#配置根目錄以及默認(rèn)頁面
location / {
root /www/test81;
index index.html index.htm;
}
#出錯(cuò)頁面配置
error_page 500 502 503 504 /50x.html;
#/50x.html文件所在位置
location = /50x.html {
root html;
}
}
方式二:監(jiān)聽不同端口
http {
...
#虛擬主機(jī)的配置
server {
#監(jiān)聽端口
listen 80;
#域名,可以有多個(gè),用空格隔開
server_name localhost;
#配置根目錄以及默認(rèn)頁面
location / {
root /www/test80;
index index.html index.htm;
}
#出錯(cuò)頁面配置
error_page 500 502 503 504 /50x.html;
#/50x.html文件所在位置
location = /50x.html {
root html;
}
}
#虛擬主機(jī)的配置
server {
#監(jiān)聽端口
listen 81;
#域名,可以有多個(gè),用空格隔開
server_name localhost;
#配置根目錄以及默認(rèn)頁面
location / {
root /www/test81;
index index.html index.htm;
}
#出錯(cuò)頁面配置
error_page 500 502 503 504 /50x.html;
#/50x.html文件所在位置
location = /50x.html {
root html;
}
}
}
售前咨詢
售后咨詢
備案咨詢
二維碼
TOP