phpStudy及XAMPP环境下设置多个wordpress站点

一、网站程序目录

1、phpStudy环境
网站根目录,也就是你的wordpress程序放置的目录 phpStudy/www/
2、xampp环境
网站根目录,也就是你的wordpress程序放置的目录 xampp/htdoc/
一般情况下,我们只需要网站程序放到目录下,然后在浏览器里输入 ip 地址 http://127.0.0.1/ 或者输入域名 http://localhost/ 就可以了。但是这样我们只能使用一个程序,建立一个网站。如果我们想要测试测试不同的程序,比如一个WordPress的网站,一个Discuz!的论坛,再加上一个ShopEx的网店,甚至同时独立运行多个wordpress网站来制作测试不同的主题等等,我们一般会在一台主机上搭建一个运行环境,否则你Apache和Musql会运行混乱,解决起来比较麻烦,所以我们很多时候只会选择一个环境搭建在本机上。

二、网站根目录下建立文件夹

我们想要在本地安装两个测试域名,www.a.tld, www.b.tld, 分别指向到网站根目录下的 a和 b 文件夹下,tld 是域名,也可以用 a.com, a.net 这样的顶级域名来代替,这里使用 tld 主要是为了避免和真实域名冲突。
1、在 phpStudy/www/下建立文件夹a,b两个文件夹
2、在 xampp/htdoc/下建立文件夹a,b两个文件夹
我们分别在文件夹a,和b下面建立两个index.html文件,分别写入:

  1. <html>
  2. 	<title>Welcome to www.A.tld</title>	
  3. 	<body>	
  4. 	<h1>Welcome to www.A.tld</h1>		
  5. 	</body>	
  6. </html>
  1. <html>
  2. 	<title>Welcome to www.B.tld</title>	
  3. 	<body>	
  4. 	<h1>Welcome to www.B.tld</h1>		
  5. 	</body>	
  6. </html>

三、在 hosts 文件中设置域名解析

Hosts 文件保存在 C:\Windows\System32\drivers\etc 目录下,无扩展名,使用文本编辑器(记事本,emeditor,UltraEdit等)可以打开编辑;如果是 Windows Vista 或者 Windows 7 ,需要首先使用管理权权限打开记事本。
然后,我们在文件最后面添加两行域名解析记录,每行一个域名。前面为ip地址,空间用空格或者制表符隔开,后面是域名:代码如下

  1. 127.0.0.1  www.a.tld       # www.a.tld
  2. 127.0.0.1  www.b.tld       # www.b.tld

三、让apache 中绑定多个域名,支持多个站点的访问

使用文件编辑器打开文件phpStudy\apache\conf\extra\httpd-vhosts.conf或者 xampp\apache\conf\extra\httpd-vhosts.conf ,在文件的最后添加如下代码

  1. <VirtualHost *:80>
  2.     ServerAdmin postmaster@a.tld
  3.     DocumentRoot "/phpStudy/www/a"
  4.     ServerName www.a.tld
  5.     ErrorLog "logs/www.a.tld-error.log"
  6.     CustomLog "logs/www.a.tld-access.log" common
  7. </VirtualHost> 
  8.  
  9. <VirtualHost *:80>
  10.     ServerAdmin postmaster@b.tld
  11.     DocumentRoot "/phpStudy/www/b"
  12.     ServerName www.b.tld
  13.     ErrorLog "logs/www.b.tld-error.log"
  14.     CustomLog "logs/www.b.tld-access.log" common
  15. </VirtualHost>

根据你测试用的环境更改DocumentRoot 后的目录,上面很明显是phpStudy环境,如果是xampp环境,改成DocumentRoot "/xampp/htdoc/a"

四、引入了 vhosts 虚拟主机配置文件

这是非常重要的一步!!!
打开xampp\apache\conf\httpd.conf文件,搜索 “Include conf/extra/httpd-vhosts.conf”,去掉前面的 # 注释符,也就是确保引入了 vhosts 虚拟主机配置文件httpd-vhosts.conf

五、重启 Apache 测试验证多域名

重新启动 apache 服务,重新打开浏览器。并在浏览器中分别输入 http://www.a.tld 和 http://www.b.tld 验证是否成功。

六、Apache多站点配置的另一简便方法

1、首先打开Apache安装目录下 conf/httpd.conf 文件,找到下面两行文字,把最前面的 # 号去掉,然后保存。目的是让Apache在启动时能加载虚拟主机模块

  1.   #LoadModule vhost_alias_module modules/mod_vhost_alias.so
  2.   #Include conf/extra/httpd-vhosts.conf

2、接着找到同一文件httpd.conf中的 DocumentRoot (在第180行左右)和 Directory (在第207行左右),改为站点目录的上一级目录例如站点放在 d:/xampp/htdocs/a 和d:/xampp/htdocs/b,d:/xampp/htdocs/c,则改为以下形式

  1. DocumentRoot " d:/xampp/htdocs"
  2. <Directory " d:/xampp/htdocs">


3、配置完成后即可打开Apache安装目录下 /conf/extra/httpd-vhosts.conf 虚拟主机配置文件

  1. <VirtualHost *:80>
  2.     DocumentRoot "d:/xampp/htdocs/a"
  3.     ServerName www.a.tld
  4.     ServerAlias 127.0.0.1	
  5. </VirtualHost> 
  6.  
  7. <VirtualHost *:80>
  8.     DocumentRoot "d:/xampp/htdocs/b"
  9.     ServerName www.b.tld
  10.     ServerAlias 127.0.0.2
  11. </VirtualHost>
  12.  
  13. <VirtualHost *:80>
  14.     DocumentRoot "d:/xampp/htdocs/c"
  15.     ServerName www.c.tld
  16.     ServerAlias 127.0.0.3
  17. </VirtualHost>

4、在 hosts 文件中设置域名解析
Hosts 文件保存在 C:\Windows\System32\drivers\etc 目录下,文件最后输入

  1. 127.0.0.1  www.a.tld       # www.a.tld
  2. 127.0.0.2  www.b.tld       # www.b.tld
  3. 127.0.0.3  www.c.tld       # www.c.tld

5、重启Apache服务
这样我们可以用 http://127.0.0.1/ , http://127.0.0.2 ,http://127.0.0.3来访问我们的多站点,也可以用 http://www.a.tld ;www.b.tld ;www.c.tld域名来访问,非常方便,让后可以在不同的文件夹里安装我们的wordpress。

七、有关phpStudy及XAMPP环境配置建议你阅读

1、phpStudy 2016 (支持PHP7)让天下没有难配的php环境
2、XAMPP最流行的PHP开发环境|511遇见强烈推荐


发布日期:

所属分类: Php, Wordpress 综合 标签: