1、配置虚拟主机需要2个文件1、Apache/conf/httpd.conf2、Apache/conf/extra/httpd-vhosts.conf (这个版本的apache可能没有,可自己创建,也可以不要此文件,而将配置直接写在httpd.conf里面,写在extra/httpd-vhosts.conf只是为了管理方便,不让httpd.conf文件内容很多而已)
2、首先,在httpd.conf下开启虚拟主机功能1、在httpd.conf中 找到#Include conf/extra/httpd-vhosts.conf去掉Include conf/extra/httpd-vhosts.conf前面的#号,低版本的可能没有此段话,加上即可。(此处是确保引入了 vhosts 虚拟主机配置文件,访问此IP的域名将全部指向 vhosts.conf 中的虚拟主机。)2、同样在httpd.conf中找到#LoadModule vhost_alias_module modules/mod_vhost_alias.so去掉前面的#号
3、然后再找到httpd.conf中的DocumentRoot和Directory,改为站点的上一级目录例:如果网站放在 D:/www/a 和 D:/www/b,那么改为以下形式DocumentRoot”D:/Appserv/www“<Directory“D:/Appserv/www”>
4、以上完成后打开httpd-vhosts.conf配置文件的内容如下:# DocumentRoot 是网站文件存放的根目录# ServerName 是网站域名, 需要跟DNS 指向的域名一致例:<VirtualHost *:80> ServerAdmin [email protected] DocumentRoot "D:/website/a" ServerName www.a.com ErrorLog "logs/dummy-host2.example.com-error.log" CustomLog "logs/dummy-host2.example.com-access.log" common</VirtualHost>
5、若要实现多站点的访问,就多复制几个<VirtualHost *:80></VirtualHost>,并修改为需要的站点目录和域名例:<VirtualHost *:80> ServerAdmin [email protected] DocumentRoot "D:/website/a" ServerName www.a.com ErrorLog "logs/dummy-host2.example.com-error.log" CustomLog "logs/dummy-host2.example.com-access.log" common</VirtualHost><VirtualHost *:80> ServerAdmin [email protected] DocumentRoot "D:/website/b" ServerName www.b.com ErrorLog "logs/dummy-host2.example.com-error.log" CustomLog "logs/dummy-host2.example.com-access.log" common</VirtualHost><VirtualHost *:80> ServerAdmin [email protected] DocumentRoot "D:/website/c" ServerName www.c.com ErrorLog "logs/dummy-host2.example.com-error.log" CustomLog "logs/dummy-host2.example.com-access.log" common</VirtualHost>
6、最后重启Apache服务就配置完成。