一、首先打開apache的配置文件httpd.conf,並去掉#Include conf/extra/httpd-vhosts.conf前面的#,啓用虛擬主機功能php
1 # Virtual hosts 2 Include conf/extra/httpd-vhosts.conf
1 Listen 127.0.0.1:80 2 Listen 80
二、先把localhost配置好,將下面信息添加到apache的apache/conf/extra下的配置文件httpd-vhosts.conf後面便可;html
1 <VirtualHost *:80> 2 ServerAdmin webmaster@dummy-host2.hleclerc-PC.ingenidev 3 DocumentRoot "D:\wamp\www\tpshop\www.shop.com" 4 DirectoryIndex index.html index.php index.htm 5 ServerName wwww.shop.com 6 <Directory "D:\wamp\www\tpshop\www.shop.com"> 7 AllowOverride All 8 Allow from All 9 </Directory> 10 </VirtualHost> 11 12 <VirtualHost *:80> 13 ServerAdmin webmaster@dummy-host2.hleclerc-PC.ingenidev 14 DocumentRoot "D:\wamp\www\tpshop\admin.shop.com" 15 DirectoryIndex index.html index.php index.htm 16 ServerName admin.shop.com 17 <Directory "D:\wamp\www\tpshop\admin.shop.com"> 18 AllowOverride All 19 Allow from All 20 </Directory> 21 22 </VirtualHost>
三、修改C:\Windows\System32\drivers\etc下的host文件,用記事本打開,添加web
1 127.0.0.1 admin.shop.com 2 127.0.0.1 www.shop.com
重啓apache便可。apache
四、配置過程出現的問題app
由於主要是修改過httpd.conf纔出現的問題,因此將以前修改的配置文件還原,發現原來本身不當心把解釋的內容給去註釋了,結果致使httpd.conf運行不了dom
#//不加#會致使httpd.conf 出錯 ServerAdmin: Your address, where problems with the server should be e-mailed. This address appears on some server-generated pages, such # as error documents. e.g. admin@your-domain.com # ServerAdmin admin@localhost
(2)訪問www.shop.com和admin.shop.com老是訪問到同一目錄,緣由是httpd-vhosts.conf在存在多處相同配置ide
1 <VirtualHost 127.0.0.1:80> //使用 *:80 匹,不然ip 127.0.0.1 的站點都會使用D:/wamp/www的目錄而不會向下查詢 2 DocumentRoot "d:/wamp/www/" 3 ServerName localhost 4 <Directory "D:/wamp/www"> 5 Options Indexes FollowSymLinks 6 AllowOverride None 7 Order allow,deny 8 Allow from all 9 </Directory> 10 </VirtualHost> 11 12 <VirtualHost *:80> 13 ServerAdmin webmaster@dummy-host2.hleclerc-PC.ingenidev 14 DocumentRoot "D:\wamp\www\tpshop\www.shop.com" 15 DirectoryIndex index.html index.php index.htm 16 ServerName wwww.shop.com 17 <Directory "D:\wamp\www\tpshop\www.shop.com"> 18 AllowOverride All 19 Allow from All 20 </Directory> 21 </VirtualHost> 22 23 <VirtualHost *:80> 24 ServerAdmin webmaster@dummy-host2.hleclerc-PC.ingenidev 25 DocumentRoot "D:\wamp\www\tpshop\admin.shop.com" 26 DirectoryIndex index.html index.php index.htm 27 ServerName admin.shop.com 28 <Directory "D:\wamp\www\tpshop\admin.shop.com"> 29 AllowOverride All 30 Allow from All 31 </Directory> 32 33 </VirtualHost>