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:\wamp\Apache2\conf\extra。 把里面的内容清空掉,换成下面的内容: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多域名多站点的功能。
打开配置文件,其打开方法如下所示查找Include conf/extra/httpd-vhosts.conf,去掉前面的#号
继续在配置文件里面查找Deny from all,并且在每一个Deny from all下面添加Allow from al,整个配置文件有三处
修改httpd-vhosts.conf中信息,其路径为:..\wamp\bin\apache\apache2.2.8\conf\extra\httpd-vhosts.conf
其中24行为项目路径,25行为域名,域名可自行定义
修改本地hosts文件,hotst里面的域名要与上面配置文件里面相对应,其路径为:C:\Windows\System32\drivers\etc\hosts
重启一下wamp,然后就可以通过域名访问本地项目,如果想配置多个项目,只要添加配置文件里面信息与hosts里面域名即可
最后作一个补充,配置过后的站点可以直接通过IP访问,条件是要和本机在同一局域网内,通过IP访问显示为最上面配置的一个站点
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)