1、基於IPhtml
1. 假設服務器有個IP地址爲192.168.1.10,使用ifconfig在同一個網絡接口eth0上綁定3個IP:web
2. 修改hosts文件,添加三個域名與之一一對應:服務器
3. 創建虛擬主機存放網頁的根目錄,如在/www目錄下創建test一、test二、test3文件夾,其中分別存放1.html、2.html、3.html網絡
4. 在httpd.conf中將附加配置文件httpd-vhosts.conf包含進來,接着在httpd-vhosts.conf中寫入以下配置:ide
5. 大功告成,測試下每一個虛擬主機,分別訪問www.test1.com、www.test2.com、www.test3.com測試
2、基於主機名spa
1. 設置域名映射同一個IP,修改hosts:code
2. 跟上面同樣,創建虛擬主機存放網頁的根目錄htm
3. 在httpd.conf中將附加配置文件httpd-vhosts.conf包含進來,接着在httpd-vhosts.conf中寫入以下配置:
下一步就是爲你創建的每一個虛擬主機設定<VirtualHost>配置塊,<VirtualHost>的參數與NameVirtualHost指令的參數是同樣的。每一個<VirtualHost>定義塊中,至少都會有一個ServerName指令來指定伺服哪一個主機和一個DocumentRoot指令來講明這個主機的內容存在於文件系統的什麼地方。blog
若是在現有的web服務器上增長虛擬主機,必須也爲現存的主機建造一個<VirtualHost>定義塊。其中ServerName和DocumentRoot所包含的內容應該與全局的保持一致,且要放在配置文件的最前面,扮演默認主機的角色。
ServerName *
DocumentRoot /www/
</VirtualHost>
<VirtualHost *:80>
ServerName www.test1.com
DocumentRoot /www/test1/
<Directory "/www/test1">
Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
<VirtualHost *:80>
ServerName www.test2.com
DocumentRoot /www/test2/
<Directory "/www/test2">
Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
</VirtualHost><VirtualHost *:80>
ServerName www.test3.com
DocumentRoot /www/test3/
<Directory "/www/test3">
Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
</VirtualHost>4. 大功告成,測試下每一個虛擬主機,分別訪問www.test1.com、www.test2.com、www.test3.com
3、基於端口
將原來的
Listen 80
改成
Listen 80
Listen 8080
2. 更改虛擬主機設置: