首页 > 代码库 > Apache基于域名配置虚拟主机

Apache基于域名配置虚拟主机

  Apache的虚拟主机服务就是指将一台机器虚拟成多台WEB服务器。具体地说,就是,我们可以利用虚拟主机服务将两个域名分配到同一台服务器上,而访问者只要输入域名就可以访问。比如在本机,我们配置www.aaa.com和www.bbb.com.基于域名的虚拟主机服务不需要多个IP地址,配置简单,无需特殊的硬件支持。下面的配置是在windows下的基于域名的虚拟主机配置,Apache版本为 httpd-2.2.22。在本机上设置两个虚拟主机,假设站点域名分别为www.51venus.com和51venus.com。

  httpd.conf文件配置
首先,在文件中找到下面的配置


# Virtual hosts
#Include conf/extra/httpd-vhosts.conf


去掉Include前的#,这个是注释符号,变成下面:


# Virtual hosts
Include conf/extra/httpd-vhosts.conf


然后找到以下三个字符串开头的语句,加#注释掉,如:


#ServerAdmin
#ServerName
#DocumentRoot


然后、修改conf/extra/httpd-vhosts.conf配置文件,如图

然后 怎么修改呢?

首先修改:VirtualHost

1 NameVirtualHost *:802 //改为3 NameVirtualHost 127.0.0.1

然后修改:VirtualHost以及Directory,下面以我修改的这个为例:

 1 <VirtualHost 127.0.0.1> 2     ServerAdmin webmaster@dummy-host.example.com 3     DocumentRoot "D:/xampp/htdocs/www"     //要与下文的目录名相对应,并设置目录权限 4     ServerName www.51venus.com        5     ServerAlias www.51venus.com 6     ErrorLog "logs/www.51venus.com-error.log" 7     CustomLog "logs/www.51venus.com-access.log"common 8 </VirtualHost> 9 10 <VirtualHost 127.0.0.1>11     ServerAdmin webmaster@dummy-host2.weiyishi.com12     DocumentRoot "D:/xampp/htdocs/venus"13     ServerName51venus.com14     ServerAlias 51venus.com15     ErrorLog "logs/51venus.com-error.log"16     CustomLog "logs/51venus.com-access.log"common17 </VirtualHost>18 19 <Directory "D:/xampp/htdocs/www">20     Options Indexes FollowSymLinks Multiviews21     AllowOverride All22     Order Allow,Deny23     Allow from all24 </Directory>25 26 <Directory "D:/xampp/htdocs/venus">27     Options Indexes FollowSymLinks Multiviews28     AllowOverride All29     Order Allow,Deny30     Allow from all31 </Directory>

我这里用的是php的语法风格,实际应用中要修改。

最后,修改hosts文件(c:\windows\system32\drivers\etc\hosts)用文本文件打开就可以

在文件的下面添加如下代码:

127.0.0.1 www.51venus.com  51venus.com

重启服务器,访问下吧!

 

Apache基于域名配置虚拟主机