0%

xampp配置虚拟主机

前言

在开发的过程中可能同时需要运行几个网站,但是每次修改http.conf文件来修改网站根目录十分麻烦。
很早以前就知道了可以配置虚拟主机,这两天才找资料学习了这个,十分方便。
平台:windows 集成环境:xampp 其他环境应该也是类似。照着别人教程来的。链接在文末


大致思路

有一个根目录,然后下面放不同网站的文件夹,然后在浏览器中输入不同的网址来访问对应文件夹的网站。

1
2
3
- Doucument Root
- station A
- station B

修改httpd.conf

下面代码框中的”//“及后面的内容在配置中需要去掉,配置文件中#才是注释符
文件目录 xampp => apache => httpd.conf

1.在文件夹中搜索httpd.conf,找到如下字段

1
2
# Virtual hosts
Include conf/extra/httpd-vhosts.conf //确保此段开头没有#

2.在文件内搜索关键字“AllowOverride All”,找到如下字段

1
2
3
4
5
6
7
8
9
10
11
12
13
<Directory "F:/xampp/cgi-bin">
AllowOverride All
Options None
Require all granted
</Directory>

//修改为
<Directory "F:/xampp/cgi-bin">
Options Indexes FollowSymLinks Includes ExecCGI
AllowOverride All
Order allow,deny
Allow from all
</Directory>

3.搜索字段“DocumentRoot”,如下。确保此处路径是你要访问的项目的根路径,然后将你需要使用的不同的网站文件夹放在这个目录下面即可。

1
DocumentRoot "E:/php/"

4.如果想自定义配置端口,还是在此配置文件http.conf下搜索字段“Listen 80”,找到如下

1
2
3
4
5
6
Listen 80
//在此添加你想监听的端口,如
Listen 80
Listen 8080
Listen 8099
....

修改httpd-vhosts.conf

文件目录 xampp => apache =>conf => extra => httpd-vhosts.conf
文件最后面可看到如下

1
2
3
4
5
6
7
##<VirtualHost *:80>
##ServerAdmin webmaster@dummy-host2.example.com
##DocumentRoot "D:/xampp/htdocs/dummy-host2.example.com"
##ServerName dummy-host2.example.com
##ErrorLog "logs/dummy-host2.example.com-error.log"
##CustomLog "logs/dummy-host2.example.com-access.log" common
##</VirtualHost>

1.使用ip访问

1
2
3
4
5
6
7
<VirtualHost 127.0.0.5:80>//设置访问的ip
##ServerAdmin webmaster@dummy-host2.example.com
DocumentRoot "D:/xampp/htdocs"//你的项目文件目录
ServerName testname.dev//此项目的名称
##ErrorLog "logs/dummy-host2.example.com-error.log"
##CustomLog "logs/dummy-host2.example.com-access.log" common
</VirtualHost>

2.用ServerName访问,如果使用ServerName访问需要修改hosts配置文件

1
2
3
4
5
6
7
<VirtualHost *:80>
##ServerAdmin webmaster@dummy-host2.example.com
DocumentRoot "E:/php/stationA"//你的项目文件目录
ServerName testname.dev//此项目的名称,通过此名称来访问项目,还需配置hosts文件
##ErrorLog "logs/dummy-host2.example.com-error.log"
##CustomLog "logs/dummy-host2.example.com-access.log" common
</VirtualHost>

3.配置hosts文件
文件目录 C:\Windows\System32\drivers\etc\hosts,在文件末尾加入

1
127.0.0.1   testname.dev

4.https的配置。
放一个https的配置,使用xampp自带的默认证书,第一次浏览器打开会提示有风险,选择忽略即可。
如果自己网站使用的话可以去腾讯云申请免费的https的证书–>腾讯云ssl证书链接

1
2
3
4
5
6
7
8
<VirtualHost *:443>
DocumentRoot "E:\php\stationA"
ServerName localhost
ServerAlias localhost
SSLEngine on
SSLCertificateFile "conf/ssl.crt/server.crt"
SSLCertificateKeyFile "conf/ssl.key/server.key"
</VirtualHost>

注:修改好配置文件之后记得在xampp的控制台重启Apache之后再进行访问。在浏览器中输入ServerName即可访问。


参考资料

xampp 配置多虚拟主机 详细步骤
xampp配置https访问

如果对您有帮助,请我喝杯咖啡?