1、打开Apache配置文件,httpd.conf(tips:记得先备份一份)
在httpd.conf文件里启用虚拟主机功能,即去掉下面配置项前面的#
LoadModule vhost_alias_module modules/mod_vhost_alias.so
2、在httpd.conf文件里导入虚拟主机配置,即去掉下面配置项前面的#。
#Include conf/extra/httpd-vhosts.conf
3、开启需要监听的端口,我开启了81
Listen 0.0.0.0:80
Listen 0.0.0.0:81
4、打开httpd-vhosts.conf文件 同样记得备份
<VirtualHost *:81>
DocumentRoot "F:/wamp/www/basic/web"
ServerName www.a.com
ServerAlias www.aa.com
<Directory />
AllowOverride none
Require all granted
</Directory>
ErrorLog "logs/dummy-host.example.com-error_log"
CustomLog "logs/dummy-host.example.com-access_log" common
</VirtualHost>
5.extra/httpd-vhosts.conf 里添加配置
<VirtualHost *:80> #第一个主机,80端口
DocumentRoot "D:/root/abc" #指向本地位置
ServerName www.abc.com #主机名称(注意这个很重要,就是你的域名,准确输入才能成功)
</VirtualHost> #结束第一个主机配置
<VirtualHost *:80> #第二个主机,80端口
DocumentRoot "D:/root/def" #指向本地位置
ServerName www.def.com #主机名称
</VirtualHost>
原先我们配置了一个站点信息也是写在了httpd.conf文件中,只要把原先的信息移至httpd-vhosts.conf 文件即可,但是你很悲催的发现另一个站点还是无法访问
在顶部我们把权限加上
<Directory "${SRVROOT}/htdocs">
Options Indexes FollowSymlinks
AllowOverride All
Require all granted
</Directory>
因为在加权限的时候没有看apache不同版本的区别所以一直无法使用,所以要看准你的版本
6.请检查你的apache版本,2.2和2.4的权限配置写法是不一样的。
2.2的如下:
Options Indexes FollowSymLinks
AllowOverride All
Allow from all
Order allow,deny
2.4的如下:
Options Indexes FollowSymlinks
AllowOverride All
Require all granted
7、最后一步就是重启了!追梦猪祝你们使用成功,你们的满意就是我们的动力!