xampp笔记

1、XAMPP添加VirtualHost以支持多个站点

 服务器有1个ip,但多个网站通过dns都可以指到这台服务器上,这时候要配置虚拟主机(单一系统上运行多个网站)

用顶级域名 访问方式 来访问你本地的项目,这时候就需要配置虚拟主机,给你的目录绑定一个域名,实现多域名绑定访问

 xampp集成了apache之类的环境集成包,实现多域名是通过配置apache实现的

在apache http.conf中:

搜索 “Include conf/extra/httpd-vhosts.conf”,确保前面没有 # 注释符,也就是确保引入了 vhosts 虚拟主机配置文件

Listen 80
Listen 8080
Listen 8081

 0

在虚拟主机设置文件中:

取消 NameVirtualHost *:80 前面的 ##,这样就启用了 vhosts.conf ,默认的httpd.conf默认配置失效。

虚拟主机配置将只设置在 httpd-vhosts.conf 里

<VirtualHost *:8080>              //端口
    DocumentRoot "D:/xampp/htdocs/a"      //存放路径
    ServerName www.a.com          //域名
</VirtualHost>

<VirtualHost *:8081>              //端口
    DocumentRoot "D:/xampp/htdocs/b"      //存放路径
    ServerName www.b.com          //域名
</VirtualHost>

有个问题,访问默认的localhost也会跳到a文件夹下,因为开启了 vhosts后,默认的 httpd 的配置就会失效了,默认的访问就指向到 vhosts 里的第一条设置去了,这时候要把 localhost的目录配置给设置回来

(这一段将localhost默认访问设置回来,将必须放在后面)

<VirtualHost *:80>
DocumentRoot /xampp/htdocs/
ServerName localhost
</VirtualHost>

 1 NameVirtualHost *:80
 2 #
 3 # VirtualHost example:
 4 # Almost any Apache directive may go into a VirtualHost container.
 5 # The first VirtualHost section is used for all requests that do not
 6 # match a ##ServerName or ##ServerAlias in any <VirtualHost> block.
 7 
 8 <VirtualHost *:80>
 9 DocumentRoot "E:/xampp/htdocs/b"
10 ServerName www.b.com
11 </VirtualHost>
12 
13 <VirtualHost *:80>
14 DocumentRoot "E:/xampp/htdocs/a"
15 ServerName www.a.com
16 </VirtualHost>
17 
18 <VirtualHost *:8080>
19 DocumentRoot "E:/xampp/htdocs/a"
20 ServerName localhost
21 </VirtualHost>
22 
23 <VirtualHost *:8081>
24 DocumentRoot "E:/xampp/htdocs/b"
25 ServerName localhost
26 </VirtualHost>
27 
28 <VirtualHost *:80>
29 DocumentRoot "E:/xampp/htdocs"
30 ServerName localhost
31 </VirtualHost>

在host文件中,修改域名映射

127.0.0.1 www.a.com


 2、把apache等服务安装为系统服务,实现每次开机自启动(点击控制台服务器前面的x,安装apache服务)


 3、 XAMPP集成包开启SSL(https)  

 1、编辑php.ini文件( */xampp/php/php.ini ),找到 “;extension=php_openssl.dll” (去掉前面的;号注释),如果没找到,直接添加新的一行 extension=php_openssl.dll 
 
 2、需要配置 httpd-ssl.conf 文件(*xamppapacheconfextrahttpd-ssl.conf)
大概86行 配置 DocumentRoot 和 ServerName ,改成自己定义的,如果没有更改默认配置的话就不用再配置了 (一般监听443端口)

原文地址:https://www.cnblogs.com/mogujiang/p/5653371.html