用IIS建立虛擬主機,實現在一臺主機上建立多個虛擬主機的方法

 IIS(以及Apache等等其他Web Server)都可以做到“虛擬主機”(注意不是“虛擬目錄”),也就是一臺主機可以對應多個Web Site(“網站”)。很多網絡服務商(IDC)就是使用這樣的技術在一臺主機上放置多個網站。

   虛擬主機實現方法有:
1。同一IP和port(“端口”),不同Host Header(“主機頭”);
2。不同port;
3。不同IP。
    2、3是對1的補充,也就是說在“不同端口”,“不同IP”下,已經可以實現“一臺主機對應多個網站”了,同時結合使用“不同主機頭”,又可以實現多個虛擬主機了。

    假設要建立aaa.com與bbb.net兩個網站,分別在D:/aaa.com和D:/bbb.net兩個目錄下,以上方法的原理和具體做法如下:
    1。同一IP和port(“端口”),不同Host Header(“主機頭”):這是最常見的做法。
IIS支持通過Host Header來區分不同的站點請求,也就是說,客戶端的瀏覽器輸入http://aaa.com或者http://bbb.net,請求送交IIS,也就是http報文裏面就會包含了host header,它的內容就包括客戶輸入的內容(aaa.com or bbb.net),IIS讀取host header,就找到該虛擬站點相應的home diretory(主目錄),根據ducument(默認首文檔)的名字尋找相應的文件,把它傳遞給客戶端。這樣,就通過不同的host header實現了“虛擬主機”的功能。
    具體做法是:
    在IIS裏面,添加兩個“站點”,描述隨便寫,主機頭分別填寫 www.aaa.comwww.bbb.net,分別對應不同的主目錄,端口最好就是默認的80,IP就是該主機對外的IP;做好要以後檢查該站點屬性裏面的主機頭和端口是否正確。
    這種方法也有一點侷限性,就是IE3.0以下瀏覽器不支持host header。

    2。不同port(“端口”):
    這種很簡單。建立方法:建立站點,不改變IP,改變端口。
    缺點:瀏覽者不知道某站點的端口,就無法訪問該站點。

    3。不同IP:
    假設本機網卡有多個IP,或者有多個網卡(也就是有多個IP),可以在建立站點以後,選擇不同的IP來實現不同虛擬主機。
    缺點:管理不方便,一般正規服務的服務器也不會有多個合法IP,而內部IP只能在內部使用。

    以上方法,不管怎麼作,都需要一個前提,就是DNS Server事先已經把域名aaa.com和bbb.net正向搜索指向該主機的合法IP了。否則正確建立了虛擬主機也不能被瀏覽。
    如果是在本地作測試的話,本機必須配置DNS Server服務,(Win2k Professional/WinNT Workstation都不能安裝DNS);或者局域網內某臺Server上安裝並配置DNS,然後測試機的網卡TCP/IP需設置DNS Server爲那臺Server的IP。
  

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章