1. 程式人生 > 其它 >5.1 用單臺虛擬主機實現多個域名

5.1 用單臺虛擬主機實現多個域名

5.1 用單臺虛擬主機實現多個域名

HTTP/1.1 規範允許一臺 HTTP 伺服器搭建多個 Web 站點。比如,提供 Web 託管服務(Web Hosting Service)的供應商,可以用一臺伺服器為多位客戶服務,也可以以每位客戶持有的域名執行各自不同的網站。這是因為利用了虛擬主機(Virtual Host,又稱虛擬伺服器)的功能。

即使物理層面只有一臺伺服器,但只要使用虛擬主機的功能,則可以假想已具有多臺伺服器。

客戶端使用 HTTP協議訪問伺服器時,會經常採用類似 www.hackr.jp 這樣的主機名和域名。

在網際網路上,域名通過 DNS 服務對映到 IP 地址(域名解析)之後訪問目標網站。可見,當請求傳送到伺服器時,已經是以 IP 地址形式訪問了。

所以,如果一臺伺服器內託管了 www.tricorder.jp 和 www.hackr.jp 這兩個域名,當受到請求時就需要弄清楚究竟要訪問哪個域名。

在相同的IP地址下,由於虛擬主機可以寄存多個不同主機名和域名的 Web 網站,因此在傳送 HTTP 請求時,必須在 Host 首部內完整指定主機名或域名的 URI。