下午需要,在網上找了一堆,沒找到合適的,翻出來自己當年的筆記,還是自己記的容易理解。
解決方案1:通過埠來區分
1>新增一個虛擬主機
1.在d盤下新建www目錄,如:d:/www。
2.修改httpd.conf中:
# Virtual hosts
#Include conf/extra/httpd-vhosts.conf
去掉前面的#號,啟用虛擬主機
3.修改httpd-vhosts.conf檔案,在後面新增以下:
<VirtualHost 127.0.0.1:80>
DocumentRoot "d:/www"
DirectoryIndex index.html index.htm index.php
<Directory />
options FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
4.在hosts檔案中新增ip和域名的對應關係
127.0.0.1 www.xxx.com
5.建議登出,在httpd.conf以下程式碼前面加#號
DocumentRoot "D:/wamp/apache/htdocs"
6.測試 http://www.xxx.com
如只需加一虛擬主機,可以不往下看了。
2>新增另一個虛擬主機
1.開發新的網站 d"/www2
2.修改httpd-vhosts.conf檔案,在後面新增以下:
<VirtualHost 127.0.0.1:81>
DocumentRoot "d:/www"
DirectoryIndex index.html index.htm index.php
<Directory />
options FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
3.配置httpd.conf檔案,讓apache監聽81埠,新增listen 81
4.在hosts檔案中新增
127.0.0.1 www.xxx2.com
5.測試 http://www.xxx2.com:81 //需指定埠號
解決方案2:通過ServerName段來區分不同的域名
1.開發新的站點 d:/www1 d:/www2
2.修改httpd.conf中:
# Virtual hosts
#Include conf/extra/httpd-vhosts.conf
去掉前面的#號,啟用虛擬主機
3.在httpd-vhosts.conf檔案中新增以下程式碼
<VirtualHost *:80>
DocumentRoot "d:/www"
#這裡指定域名
ServerName www.xxx.com
DirectoryIndex index.html index.htm index.php
<Directory />
options FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
<VirtualHost *:80>
DocumentRoot "d:/www2"
#這裡指定域名
ServerName www.xxx2.com
DirectoryIndex index.html index.htm index.php
<Directory />
options FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
4.重啟apache,測試
http://www.xxx.com
http://www.xxx2.com
方案1剛試了可行,方案2有點小問題,沒達到自己的要求。
大家有更好的建議也分享下。