1、首先修改"C:\Windows\System32\drivers\etc"目录下的 hosts 文件,用记事本打开,加入:
127.0.0.1 www.taobao.com
127.0.0.1 www.tmall.com
2、 打开xampp/apache/conf/httpd.conf文件,搜索 “Include conf/extra/httpd-vhosts.conf”,去掉“Include conf/extra/httpd-vhosts.conf“”前面的注释“#” ;
注意:开启了httpd-vhosts.conf,默认的httpd.conf默认配置失效,访问此IP的域名将全部指向 vhosts.conf 中的第一个虚拟主机。
3、在虚拟主机设置文件xampp/apache/conf/extra/httpd-vhosts.conf里设置:
取消 NameVirtualHost *:80 前面的 ##,这样就启用了 vhosts.conf ,默认的httpd.conf默认配置失效。虚拟主机配置将只设置在 httpd-vhosts.conf 里。
<VirtualHost *:80>
DocumentRoot /xampp/htdocs/taobao
ServerName www.taobao.com
ServerAlias xxx.taobao.com yyy.taobao.com #(这里可以用别名设置多个域名访问)
</VirtualHost>
<VirtualHost *:80>
DocumentRoot /xampp/htdocs/tmall
ServerName www.tmall.com
</VirtualHost>
4、 设置完了第3条之后,你会发现访问 localhost直接指向到设置的 taobao 那个路径去了,这个问题在第2条有讲。也就是开启了 vhosts 后,默认的 httpd 的配置就会失效了,默认的访问就指向到 vhosts 里的第一条设置去了。这时候你要把 localhost 的目录配置给设置回来。
<VirtualHost *:80>
DocumentRoot /xampp/htdocs/
ServerName localhost
</VirtualHost>
补充:这里的DocumentRoot 都是文件夹htdocs下面的, 如何需要配置在其他路径下面,则需要配置
<Directory "你的DocumentRoot路径">
Options Indexes FollowSymLinks Includes ExecCGI
AllowOverride All
Require all granted
</Directory>