(1)啟用 httpd-vhosts.conf:
在httpd.conf
檔案中找到如下**,若有注釋,去掉。 (啟用虛擬主機)
# virtual hosts ,虛擬主機
(1) 在httpd-vhosts.conf檔案中做配置,在檔案末尾寫入如下**:
也可以將下面**放到單獨檔案中,在 http.conf 檔案中引入
s檔案位於:c:\windows\system32\drivers\etc 目錄下
hosts檔案中新增ip與網域名稱的繫結
windows:
documentroot "c:/test"
servername m.local.cc
errorlog "c:/test/m.local.cc-error.log"
customlog "c:/test/m.local.cc-access.log" common
options indexes followsymlinks includes execcgi
allowoverride all
require all granted
一、基於ip
1. 假設伺服器有個
ip位址為
192.168.1.10
,使用ifconfig
在同乙個網路介面
eth0
上繫結3個ip
:[root@localhost root]# ifconfig eth0:1 192.168.1.11
[root@localhost root]# ifconfig eth0:2 192.168.1.12
[root@localhost root]# ifconfig eth0:3 192.168.1.13
2. 修改
hosts
檔案,新增三個網域名稱與之一一對應:
192.168.1.11 www.test1.com
192.168.1.12 www.test2.com
192.168.1.13 www.test3.com
3. 建立虛擬主機存放網頁的根目錄,如在
/www
目錄下建立
test1
、test2
、test3
資料夾,其中分別存放
1.html
、2.html
、3.html
/www/test1/1.html
/www/test2/2.html
/www/test3/3.html
4. 在
中將附加配置檔案
包含進來,接著在
中寫入如下配置:
(新增新的虛擬主機)
servername www.test1.com
documentroot /www/test1/
options indexes followsymlinks
allowoverride none
order allow,deny
allow from all
servername www.test1.com
documentroot /www/test2/
options indexes followsymlinks
allowoverride none
order allow,deny
allow from all
servername www.test1.com
documentroot /www/test3/
options indexes followsymlinks
allowoverride none
order allow,deny
allow from all
5. 大功告成,測試下每個虛擬主機,分別訪問
www.test1.com
、www.test2.com
、www.test3.com
二、基於主機名
1. 設定網域名稱對映同乙個
ip,修改
hosts
:192.168.1.10 www.test1.com
192.168.1.10 www.test2.com
192.168.1.10 www.test3.com
2. 跟上面一樣,建立虛擬主機存放網頁的根目錄
/www/test1/1.html
/www/test2/2.html
/www/test3/3.html
3. 在
中將附加配置檔案
包含進來,接著在
中寫入如下配置:
為了使用基於網域名稱的虛擬主機,必須指定伺服器ip
位址(和可能的埠)來使主機接受請求。可以用
namevirtualhost
指令來進行配置。 如果伺服器上所有的ip
位址都會用到, 你可以用
*作為namevirtualhost
的引數。
在namevirtualhost
指令中指明
ip位址並不會使伺服器自動偵聽那個
ip位址
。這裡設定的ip
位址必須對應伺服器上的乙個網路介面。
下一步就是為你建立的每個虛擬主機設定
配置塊,
的引數與
namevirtualhost
指令的引數是一樣的。每個
定義塊中,至少都會有乙個
servername
指令來指定伺服哪個主機和乙個
documentroot
指令來說明這個主機的內容存在於檔案系統的什麼地方。
如果在現有的web
伺服器上增加虛擬主機,必須也為現存的主機建造乙個
定義塊。其中
servername
和documentroot
所包含的內容應該與全域性的保持一致,且要放在配置檔案的最前面,扮演預設主機的角色。
namevirtualhost *:80
servername *
documentroot /www/
servername www.test1.com
documentroot /www/test1/
options indexes followsymlinks
allowoverride none
order allow,deny
allow from all
servername www.test2.com
documentroot /www/test2/
options indexes followsymlinks
allowoverride none
order allow,deny
allow from all
servername www.test3.com
documentroot /www/test3/
options indexes followsymlinks
allowoverride none
order allow,deny
allow from all
4. 大功告成,測試下每個虛擬主機,分別訪問
www.test1.com
、www.test2.com
、www.test3.com
三、基於埠
1. 修改配置檔案
將原來的
listen 80
改為listen 80
listen 8080
2. 更改虛擬主機設定:
documentroot /var/www/test1/
servername www.test1.com
documentroot /var/www/test2
servername www.test2.com
apache虛擬主機配置
之前已經在csdn上上傳過apache的文件在這裡補充說明一下,apache2.2.x與tomcat或iis或三者之間的虛擬主機配置。介紹一下如何整合其他 web伺服器,如 iis tomcat 等。網上有 n多整合方案講的都不是很清楚 特別是 windows 下的 這裡要特別提示一下,apache...
apache虛擬主機配置
多個網域名稱 伺服器 對應乙個 ip 位址,配置方法為 namevirtualhost 111.22.33.44 servername www.sample.com documentroot www sample servername www.sample2.com documentroot www...
apache配置虛擬主機
namevirtualhost 80 directoryindex default.php index.html index.php index.htm servername www.host1.com servername host1 com documentroot d wamp www1 er...