虛擬多重主機可以讓原始伺服器,如反向代理伺服器,回應多個 DNS 別名,如同在每個位址上安裝了不同的伺服器。舉例來說,假設您的 DNS 主機名稱為:
www
specs
phones
這三個主機名稱都可對映至相同的 IP 位址,即反向代理伺服器的 IP 位址。接著反向代理伺服器可依據存取其本身時所使用的 DNS 名稱,而做出不同的回應。
另外,虛擬多重主機也能讓您在單一反向代理伺服器中,放置多個不同的 *網域*。例如︰
www.domain-1.com
www.domain-2.com
www.domain-3.com
您可以將多個本地主機名稱和多個網域組合在單一代理伺服器中:
www
specs
phones
www.domain-1.com
www.domain-2.com
www.domain-3.com
虛擬多重主機的運作方式,是指定 DNS 主機和網域名稱或別名,然後再指定傳送至該主機名稱的請求,所應導向的目標 URL 前綴。舉例來說,假設您有兩個對映:
engr.domain.com -> http://int-engr.domain.com
mktg.domain.com -> http://int-mktg.domain.com
對映不一定是從根目錄到根目錄。您可以在目標 URL 中指定附加的 URL 路徑前綴:
engr.domain.com -> http://internal.domain.com/engr
mktg.domain.com -> http://internal.domain.com/mktg
這同樣適用於虛擬網域對映。例如,您可以使用:
www.domain-1.com -> http://int-engr.domain.com
www.domain-2.com -> http://int-mktg.domain.com
系統會查看 HTTP「Host:」標頭。系統會根據該標頭,選擇相符的虛擬多重主機對映。如果沒有相符的多重主機對映,伺服器會依據對映出現在配置檔案中的順序繼續查看其他對映。如果仍找不到相符的對映,伺服器將不執行對映。如果找不到相符的對映,代理伺服器通常會發出「代理拒絕執行請求」的回應。
存取 Server Manager,然後按一下 [URL] 標籤。
按一下 [Configure Virtual Multihosting] 連結。
這時會顯示 [Configure Virtual Multihosting] 頁面。
在 [Source Hostname (alias)] 欄位中,指定要套用此對映的本地主機名稱 (或 DNS 別名)。
在 [Source Domain Name] 欄位中,鍵入應套用此對映的本機網域名稱。
一般而言,這個名稱是您網路的網域名稱,除非您要針對多個不同的 DNS 網域使用多重主機。
在 [Destination URL Prefix] 欄位中,鍵入當主機和網域名稱與上述規格相符時,要將請求導向至的目標 URL 前綴。
若您使用範本,請在 [Use This Template] 下拉式清單中選擇範本名稱,若您不想套用範本,則將此值保留為 NONE。
按一下 [OK]。
按一下 [Restart Required]。
此時會顯示 [Apply Changes] 頁面。
按一下 [Restart Proxy Server] 按鈕以套用變更。
針對您要建立的每個虛擬多重主機對映,重複執行上述步驟。
所有虛擬多重主機對映都會出現在 [Configure Virtual Multihosting] 頁面的底端。[Source Hostname (alias)] 和 [Source Domain Name] 欄位以及代理伺服器的連接埠號會合併起來,成為單一的常規表示式,以用來比對「主機:」標頭。
例如,若您的主機名稱為 www,網域為 example.com,連接埠號為 8080,則會出現下列常規表示式:
www(|.example.com)(|:8080)
此常規表示式保證與使用者可能鍵入的下列所有可能組合,或用戶端可能傳送的下列所有可能組合相符。即使該連接埠號並非 80,有些用戶端軟體仍可能加以省略,因為伺服器已經在該連接埠上進行偵聽。
www
www:8080
www.example.com
www.example.com:8080
在配置反向代理伺服器對映之前,您必須先停用用戶端自動配置功能。用戶端自動配置功能適用於正向代理伺服器作業,而非反向代理伺服器。
虛擬多重主機功能會建立自動反向對映。請勿針對使用 [Virtual Multihosting] 頁面所提供的對映建立反向對映。
虛擬對映是以 obj.conf 檔案中的 virt-map 函數指定。
虛擬對映是依據 obj.conf 配置檔案中所指定的順序進行比對。若標準對映、反向對映、常規表示式對映或用戶端自動配置對映出現在虛擬對映之前,則會優先套用這些對映。同樣地,若未在虛擬對映中找到相符對映,則會繼續對 obj.conf 中虛擬對映區段之後的下一個對映進行轉換。
依照規格的順序,反向對映應出現在其他對映之前。
若代理伺服器的連接埠號有所變更,則必須重新建立虛擬多重主機對映,以採用新的連接埠號。