基於域名的虛擬主機

構建虛擬web主機 html

1:虛擬web主機是在同一臺服務器中運行多個web站點,其中的每個站點實際上並不獨立佔用整個服務器,因此被稱爲"虛擬web主機"經過虛擬web主機能夠充分利用服務器的硬件資源,從而大大下降網站構建及運行成本。 web

2:httpd能夠方便構建虛擬主機服務器,只須要運行一個httpd服務就可以同時支撐大量的web站點。httpd支持的虛擬主機類型包括一下三種 瀏覽器

第一種:基於域名:每一個虛擬主機使用不一樣的域名,可是其對用的ip地址是同樣的。例如:www.benet.com和www.accp.com站點的ip地址都是192.168.1.1。這個是使用最廣泛的虛擬web主機類型。 服務器

第二種:基於ip地址:爲每一個虛擬主機使用不一樣的域名,而且各自對應的ip地址也不相同,這種方式須要爲服務器配置多個網絡接口,所以應用並非很是普遍。 網絡

第三種:基於端口:這種方式並不使用域名和ip地址來區分不一樣的站點內容,而是使用不一樣的TCP端口,所以用戶在瀏覽不一樣的虛擬站點時須要同時指定端口號才能訪問。 ide

注意:上面三種虛擬web主機中,基於域名的虛擬主機使用最爲普遍,另外不一樣類型的虛擬主機其區分機制各不相同,建議不要同時使用。以避免混淆! 測試

實驗一:基於域名的虛擬主機 網站

1:使用一臺httpd服務器搭建兩個虛擬web主機www.benet.com和www.accp.com,IP地址爲:192.168.1.1 spa

2:爲虛擬主機準備網頁文檔 3d

先爲每一個虛擬web主機準備網站目錄及網頁文檔。爲了測試方便,分別爲每一個虛擬web主機提供包含不一樣內容的首頁文件。例如:在/var/www/html/目錄下建立兩個子文件夾benet.com和accp.com,分別做爲www.benet.com和www.accp.com的網站根目錄,分別編寫測試網頁文件。

首先須要源碼安裝httpd服務並啓動http的服務

3:添加虛擬主機配置

在httpd服務器的主配置文件中,若是要啓用基於域名的虛擬web主機,一般須要配置一下方面:

※ 監聽地址:使用NameVirtualHost配置項指定提供虛擬主機服務的ip地址,也就是進行域名查詢時各虛擬web主機的ip地址。例如:192.168.1.1

※ 虛擬主機區域:使用<VirtualHost 監聽地址〉......</VirtualHost〉區域配置。爲每一個虛擬web主機創建獨立的配置內容,其中最少應該包括虛擬主機的網站名稱,網頁根目錄的配置項,其餘配置項可根據需求添加

※ 目錄權限:使用<Directory 目錄位置>......</ Directory>區域配置,爲每個虛擬web主機的網站目錄設置訪問權限。如容許任何人訪問。

當虛擬web主機的數量較多時,建議使用獨立的虛擬主機配置文件,而後在httpd.conf文件中經過lnclude加載這些配置、這樣能夠將httpd.conf文件的改動減至最少,更方便配置內容的維護。

重載服務

最後客戶機訪問web站點

在客戶機的瀏覽器中,使用網站名稱分別訪問不一樣的虛擬web主機,確實可以看到不一樣的網頁內容,就表示基於域名的主機配置成功。

而其餘兩種方式基於ip地址和基於端口的虛擬主機和域名相似,只是不能使用NameVirtualHost來指定監聽服務器的地址。

相關文章
相關標籤/搜索