现在的位置: 首页 > windows2003 apache > 正文
Apache VirtualHost配置成功/Wamp虚拟主机配置
2012年04月14日 windows2003 apache ⁄ 共 1533字 暂无评论

Apache VirtualHost配置成功/Wamp虚拟主机配置

 

今天终于把Apache的“虚拟主机”配置的问题解决了。
网上关于Apache VirtualHost部分的不少,但是基本上都是有问题的,所以我得把配置过程记录下来。
系统环境,Windows Server 2003 SP2,WAMPServer 5_1.7.4,Apache 2.2.6。
编辑httpd.conf,查找Include conf/extra/httpd-vhosts.conf,把前面注释符号“#”删掉。
编辑httpd-vhosts.conf,我把WAMPServer安装在D:/wamp,所以我这里的路径是D:wampApache2confextra。

 

 

把里面的内容清空掉,换成下面的内容:

NameVirtualHost *:80
<VirtualHost *:80>
ServerName xxxxxxxxx.cn
ServerAlias www.xxxxxxxxx.cn
DocumentRoot d:/www/www
</VirtualHost>
<VirtualHost *:80>
ServerName beta.gx.cn
ServerAlias www.beta.gx.cn
DocumentRoot d:/www/beta.gx.cn/
</VirtualHost>
<VirtualHost *:80>
ServerName test.xxxxxxxxx.cn
ServerAlias www.test.xxxxxxxxx.cn
DocumentRoot d:/www/test.xxxxxxxxx.cn/
</VirtualHost>

说明一下,NameVirtualHost *:80和中 的*为当前服务器IP,如果有固定IP可以用IP把*替换掉,我这里使用的是动态IP,所以用*,我看apache帮助文档的时候,一直认为这里的*为对 应的域名,这个想法应该是错误的,因为我填上域名的时候一直没有设置成功。ServerName这个填域名,DocumentRoot填 ServerName上域名对应的根目录。
这时候访问域名会出现403权限错误,我的D盘用的是NTFS,对应的文件夹everyone的权限都是全部控制,所以不存在系统权限的问题。
问题出在httpd.conf上。
编辑httpd.conf,找到DocumentRoot "d:/www/www/"这项,这是默认根目录路径,但是要更改的不是这个,一直往下找,找到<Directory "d:/www/www">,然后找到对应字段,在下面加上:

<Directory "d:/www/test.xxxxxxxxx.cn">
Options Indexes FollowSymLinks
AllowOverride all
Order Allow,Deny
Allow from all
</Directory>
<Directory "d:/www/beta.gx.cn">
Options Indexes FollowSymLinks
AllowOverride all
Order Allow,Deny
Allow from all
</Directory>

这里的"d:/www/beta.gx.cn"和"d:/www/test.xxxxxxxxx.cn"为前面VirtualHost里的路径。
保存httpd.conf和httpd-vhosts.conf,然后重启Apache。
然 后访问xxxXXXxxx.CN打开的是d:/www/www目录,访问beta.gx.cn的是d:/www/beta.gx.cn,而访问 test.xxxXXXxxx.CN的则是d:/www/test.xxxxxxxxx.cn/目录,实现了单IP多域名多站点的功能。

给我留言

您必须 [ 登录 ] 才能发表留言!

×