做开发时有时需要几个网站间进行切换,如果用docker管理的话可以较为方便的同时开启几个服务,下面来看看在xampp下怎么配置。
- 打开httpd.conf文件(默认位置 C:\xampp\apache\conf)做如下修改:
# Virtual hosts
#Include "conf/extra/httpd-vhosts.conf"
找到上面内容,将第二行前面的#去掉,即改为:
# Virtual hosts
Include "conf/extra/httpd-vhosts.conf"
如果本来没有被注释掉则不用做修改。
- 打开httpd-vhosts.conf文件(默认位置 C:\xampp\apache\conf\extra),修改如下:
#NameVirtualHost *:80
将上面一行代码的注释去掉(第20行),改为:
NameVirtualHost *:80
如果端口号80被占用可改为其他端口。
- 添加站点相应配置
将DocumentRoot 设置为对应目录,ServerName 设置为对应域名,以及别名和错误日志的配置。
#one site
<VirtualHost *:80>
ServerAdmin postmaster@host.localhost
DocumentRoot "C:/xampp/htdocs"
ServerName localhost
ServerAlias www.localhost
ErrorLog "logs/host.localhost-error.log"
CustomLog "logs/host.localhost-access.log" combined
</VirtualHost>
#two site
<VirtualHost *:80>
ServerAdmin postmaster2@host.localhost
DocumentRoot "C:/xampp/htdocs/test"
ServerName test.com
ServerAlias www.test.com
ErrorLog "logs/host.localhost-error2.log"
CustomLog "logs/host.localhost-access2.log" combined
</VirtualHost>
#other site...
- 重启xampp
- 修改本地hosts文件,将域名解析到本地ip(文件路径 C:\Windows\System32\drivers\etc\hosts)。
在文件中添加对应的ServerName和ServerAlias 的值映射到本地ip即可。
127.0.0.1 localhost
127.0.0.1 test.com
127.0.0.1 www.localhost
127.0.0.1 www.test.com