XAMPP下使用顶级域名绑定虚拟主机的配置方法和示例

有时候你需要一些顶级域名访问方式来访问你本地的项目,这时候就需要配置虚拟主机,给你的目录绑定一个域名,实现多域名绑定访问。(本地的话可以通过修改 hosts 文件随便绑定什么域名比如 www.a.com 或者 localdemo)。

现在假定你有两个目录,一个存在于 /xampp/htdocs/a,另一个存在于 /xampp/htdocs/b 。

现在你想要在本地测试的时候访问 www.a.com 对应的目录是 /xampp/htdocs/a ,访问 www.b.com 对应的目录是 /xampp/htdocs/b 。懂得 Apache配置的其实就可以绕开了,因为 XAMPP 无非就是集成了 Apache 之类的环境集成包,实现多域名也就是通过配置 Apache 实现的。

以下配置针对的是XAMPP Windows 1.7.4 版本,不过对于XAMPP的其他版本也同样适用。

下载地址:http://www.jb51.net/softs/308.html

1、首先修改C:/WINDOWS\system32\drivers\etc目录下的 hosts 文件,用Notepad++ 或记事本打开,加入:

代码如下:

127.0.0.1 www.a.com
127.0.0.1 www.b.com

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

开启了httpd-vhosts.conf,默认的httpd.conf默认配置失效(确保 httpd-vhosts.conf 文件里也开启了虚拟主机配置,见第3条),访问此IP的域名将全部指向 vhosts.conf 中的第一个虚拟主机。(注意是第一个,详见第4)

3、在虚拟主机设置文件xampp\apache\conf\extra\httpd-vhosts.conf里设置:

取消 NameVirtualHost *:80 前面的 ##,这样就启用了 vhosts.conf ,默认的httpd.conf默认配置失效。虚拟主机配置将只在httpd-vhosts.conf 里设置。

代码如下:

<VirtualHost *:80>
DocumentRoot /xampp/htdocs/a
ServerName www.a.com
</VirtualHost>

<VirtualHost *:80>
DocumentRoot /xampp/htdocs/b
ServerName www.b.com
</VirtualHost>

4、 设置完了第3条之后,你会发现访问 localhost直接指向到设置的 a 那个路径去了,这个问题在第2条有讲。也就是开启了 vhosts后,默认的 httpd 的配置就会失效了,默认的访问就指向到 vhosts 里的第一条设置去了。这时候你要把 localhost的目录配置给设置回来。

代码如下:

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

至此,XAMPP 的虚拟主机设置完毕,现在访问 localhost 还是原来的 XAMPP 的帮助指南,访问 www.a.com 将指向到绑定的 a 目录,访问 www.b.com 将指向到绑定的 b 目录。

实例参考:

XAMPP添加VirtualHost以支持多个站点

在c:\xampp\apache\conf\extra\httpd-vhosts.conf文件中添加如下内容:

代码如下:

NameVirtualHost *:80
<VirtualHost *:80>
DocumentRoot "E:/php/wordpress"
ServerName wordpress
</VirtualHost>

//下面这一段必须加入,不然无法访问

<Directory "E:/php/wordpress">
Options Indexes FollowSymLinks Includes ExecCGI
AllowOverride All
Order allow,deny
Allow from all
</Directory>

不过可以将上面两段合在一起

代码如下:

<VirtualHost *:80>
DocumentRoot "E:/php/wordpress"
ServerName wordpress
<Directory "E:/php/wordpress">
Options Indexes FollowSymLinks Includes ExecCGI
AllowOverride All
Order allow,deny
Allow from all
</Directory>
</VirtualHost>

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

代码如下:

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

</VirtualHost>

在C:\WINDOWS\system32\drivers\etc目录下的hosts文件中添加如下内容:

代码如下:

127.0.0.1 wordpress

(0)

相关推荐

  • 解决xampp自启动和mysql.sock问题

    装了ubuntu好长一段时间了,都没去用,国庆的时候折腾了下,配置了一些基本的开发环境,一上手就感觉喜欢上了ubuntu,说不上为什么.为了搞本地的测试php测试环境而装了xampp,安装超简单,但是我发现它没有自启动.解决办法也很简单,通过下面的命令打开启动的资源文件: 复制代码 代码如下: x@zst:~$ cd /etc/init.d x@zst:/etc/init.d$ sudo gedit rc.local 在启动文件里加入一行代码: 复制代码 代码如下: /opt/lampp/lam

  • 基于AppServ,XAMPP,WAMP配置php.ini去掉警告信息(NOTICE)的方法详解

    AppServ,XAMPP,WAMP都是集成了apache,mysql,php的套装,使用起来比较方便,就不需要再去一个个的配置php,apache和mysql. 下载相应的安装包进行安装,不过对于php项目来说,WAMP会默认显示NOTICE信息,页面上一大段一大段的,比较难看.怎么去掉这些警告信息呢?先找到php.ini文件. 其路径是:(我的安装路径是D:\wamp)D:\wamp\bin\php\php5.3.10\php.ini ,打开该文件. 在文件中搜索,error_reporti

  • 新安装的XAMPP访问phpmyadmin出错的解决方法

    XAMPP(Apache+MySQL+PHP+PERL)是一个功能强大的建 XAMPP 软件站集成软件包,轻巧,用起来很方便.它提供了强大的phpmyadmin数据库管理工具,让使用者对数据库的使用和管理得心应手.对于不能在本地打开phpmyadmin的问题,我的解决方案如下: MySQL有一个默认的专用端口:3306,所以,如果你之前独立安装了MySQL,那么3306端口已经被占用.安装XAMPP集成的MySQL时,必须重新设置独立的端口,否则是不能访问phpmyadmin的,我收到的报错信息

  • XAMPP安装与使用方法详细解析

    XAMPP 是一个把Apache网页服务器与PHP.Perl及MySQL集合在一起的安装包,允许用户可以在自己的电脑上轻易的建立网页服务器.使用 XAMPP 您可以轻松的在本机调试您的 PHP 程序.CMS以及 wordpress 博客程序.本文主要分享一下 XAMPP 的使用教程. XAMPP 使用方法1.下载 XAMPP 首先下载 XAMPP ,您可以在本页面下方提供的链接直接点入官方网站下载. 2.安装 XAMPP 我使用的是 XAMPP 的 Windows 版的安装包,下载后直接安装即可

  • xampp中修改mysql默认空密码(root密码)的方法分享

    参考了网上提供的一些方法,发现说的都挺复杂.下面同大家分享一种简单快捷的方法. 首先说明下mysql用户的相关信息是保存在mysql数据库的user表中的,并且该表的密码字段(Password)是通过PASSWORD方法加密存储的. 明白了以上提示,那么修改密码就简单了,直接运行如下SQL语句即可(这里将密码修改为jb51.net): 复制代码 代码如下: UPDATE user SET password=PASSWORD('jb51.net') WHERE user='root'; 经过以上操

  • xampp apache启动失效问题的解决方法

    你会发现,由于oracle 10g 建立了"perl5lib"的环境变量路径,从而导致xampp启动apache的时候报错: [Thu Oct 22 08:56:27 2009] [error] Can't load Perl file: C:/xampp/apache/conf/extra/startup.pl for server localhost:80, exiting... 有2种解决方法: 1.重新配置好perl5lib环境变量,这种方法可能有些麻烦: 2.更简单的方法是:

  • xampp中apache在windows7下无法启动的解决方法

    环境windows 7 32位 下载zip版本的xampp,无法启动apache ,现象是短暂显示了running标志之后就停止了,日志显示WARNING:terminating worker thread 0. 查看日志信息 [notice] Apache/2.2.14 (Win32) DAV/2 mod_autoindex_color PHP/5.3.1 mod_apreq2-20090110/2.7.1 mod_perl/2.0.4 Perl/v5.10.1 configured -- r

  • dvwa+xampp搭建显示乱码的问题及解决方案

    如图,dvwa显示乱码,解决办法有两个: 1.方法一是,临时解决办法,也就是每次都得手动修改:利用浏览器的编码修改 2.方法二是:永久方案,那就是修改dvwa的配置文件,修改默认编码,位置在(记得打开隐藏文件夹) C:\xampp\htdocs\DVWA\dvwa\includes\dvwaPage.inc.php 由于安装路径不同,但是相对路径(即dvwa的安放路径)DVWA\dvwa\includes\dvwaPage.inc.php是不变的 修改里面的http头:把默认的编码utf-8修改

  • XAMPP下使用顶级域名绑定虚拟主机的配置方法和示例

    有时候你需要一些顶级域名访问方式来访问你本地的项目,这时候就需要配置虚拟主机,给你的目录绑定一个域名,实现多域名绑定访问.(本地的话可以通过修改 hosts 文件随便绑定什么域名比如 www.a.com 或者 localdemo). 现在假定你有两个目录,一个存在于 /xampp/htdocs/a,另一个存在于 /xampp/htdocs/b . 现在你想要在本地测试的时候访问 www.a.com 对应的目录是 /xampp/htdocs/a ,访问 www.b.com 对应的目录是 /xamp

  • 虚拟主机下实现多域名绑定不同的子目录的方法

    一.ASP动态页面 第一步:创建转向控制页面 创建网站默认的首页文件(通常为"index.asp"或"default.asp")如下: 复制代码 代码如下: <% select case request.servervariables("http_host") case " www.xxdxft.cn" '域名1 Server.Transfer("/show/index.asp") case &quo

  • apache 虚拟主机的配置方法

    方法一: 首先打开apache中conf下的http.conf文件打开虚拟主机的注释:如下去掉第二行前面的#即可 # Virtual hosts # Include conf/extra/httpd-vhosts.conf 再打开conf目录下的extra目录中的httpd-vhosts.conf文件 在文件最后面加上 <VirtualHost *:80>//你的虚拟主机所使用的端口号 ServerAdmin webmaster@dummy-host2.localhost //虚拟主机的管理员

  • apache服务器一个ip(如:127.0.0.1)和多个域名(虚拟主机)的绑定

    今天在学习PHP时,有这样的一个需求:一个ip(如:127.0.0.1)和多个域名(虚拟主机)绑定,以下是我的解决方案: 解决方案一:通过端口来区分不同的虚拟主机 ①按照绑定一个站点的方法做好准备 1. 先开发好自己的网站(d:/myblog(存放在D盘的myblog目录下)) 2. 配置httpd.conf文件(存放在apache安装目录的conf文件夹中),启用httpd-vhosts.conf(把第二行前面的#号去掉即可). 3. 配置httpd-vhosts.conf文件(存放在apac

  • 使用nginx配置基于域名的虚拟主机实现​

    1.什么是虚拟主机 虚拟主机使用特殊的技术,将一台运行的服务器,在逻辑上划分成多个主机.这样做主要是能让一台物理服务器上运行多个网站程序,这样就可以利用起来服务器剩余的空间.充分发挥服务器的作用.虚拟主机间,是完全独立的. 这样在使用nginx去搭建网站平台的时候,只需要使用一个nginx软件,就能运行多个基于ip或者基于域名的网站. 2.基于域名的虚拟主机 这种基于域名的虚拟主机是最常用的.基于ip的一般都是在内网中使用. (1)nginx.conf中的配置 只要在nginx.conf中添加上

  • apache虚拟主机的配置指南

    一.检查apache虚拟主机模块 apache要配置虚拟主机,就需要先查看apache是否编译vhost_alias_module模块.当然apache默认是已经编译该模块的,我们可以通过以下命令查看是否已经编译模块,如下: /usr/local/apache2/bin/apachectl -M 二.开启apache虚拟主机功能 要开启apache虚拟主机功能,我们需要修改apache配置文件http.conf.打开apache的安装目录,找到httpd.conf文件,去掉Include con

  • nginx配置虚拟主机vhost的方法详解

    前言 所谓虚拟主机,是说通过几个不同的url地址,都能到达nginx环境,只不过针对不同的url,处理的逻辑不同. nginx支持虚拟主机,但是浏览器等客户端不知道,所以虚拟主机的几个地址,应该是都指向nginx所在的ip地址,虚拟主机功能才能正常. 环境 系统环境:CentOS6.7 nginx version: nginx/1.8.1 方案 例如配置文件位于: /opt/nginx/conf/nginx.conf 在http {}的最后,添加如下行: include vhosts/*.con

  • 某集团任意文件下载到虚拟主机getshell的方法

    0x01 前言  从某群的故事改编而来,都是些老套路各位看官看得高兴就好:第一次在i春秋发帖有点紧张,如果有什么不周到的地方请去打死阿甫哥哥.你没听错,阿甫哥哥推荐. 0x02 什么是任意文件下载 说到文件下载各位童鞋都不陌生(老司机请跳过),我们要下载网站上某个文件(.zip..doc..pdf)直接请求这个文件即可格式一般为:域名+相对路径+文件名,如http://www.test.com/downlad/test.zip.而在网站上下载文件一般分为两种,一种就是刚才所说的直接请求某个文件,

  • Nginx虚拟主机的配置步骤过程全解

    目录 一.Nginx虚拟主机的配置 二.日志的配置 三.Nginx缓存配置 四.Nginx的gzip压缩配置 五.Nginx自动列目录配置 一.Nginx虚拟主机的配置 虚拟主机:通常情况下,为了使每个服务器可以供更多用户使用,可以将一个服务器分为很多虚拟的子服务器,每个子服务器都是互相独立的.这些服务器是根据虚拟化技术分出来的,这样,一台服务器就可以虚拟成很多台子服务器.我们把子服务器叫做虚拟主机.我们搭建好Nginx服务器之后,此时只有一台Nginx服务器,这时如果我们对这台服务器进行虚拟主

  • Apache虚拟主机的配置和泛域名解析实现代码

    虚拟主机的配置 基于IP地址的虚拟主机配置 Listen 80 DocumentRoot /www/jb51 ServerName www.jb51.net DocumentRoot /www/jb512 ServerName www.jb512.org 基于IP和多端口的虚拟主机配置 Listen 172.20.30.40:80 Listen 172.20.30.40:8080 Listen 172.20.30.50:80 Listen 172.20.30.50:8080 DocumentRo

随机推荐