快速业务通道

Web服务器(Apache)虚拟主机的配置

作者 佚名技术 来源 Linux系统 浏览 发布时间 2012-04-13

一.定义

所谓虚拟主机是指在一台服务器里运行几个网站,提供WEB、FTP、Mail等服务.

二.虚拟主机的实现方法有三种:

基于IP的方法,基于主机名的方法和基于端口的法官法.

①基于IP的方法:
  
  在服务器里绑定多个IP,然后配置WEB服务器,把多个网站绑定在不同的IP上.访问不同的IP,就看到不同的网站.
②基于端口的方法:

一个IP地址,通过不同的端口实在不同网站的访问.
③基于主机名的方法:
  
 设置多个域名的A记录,使它们解析到同一个IP地址上,即同一个服务器上.然后,在服务器上配置WEB服务端,添加多个网站,为每个网站设定一个主机名.HTTP协议访问请求里包含有主机名信息,当WEB服务器收到访问请求时,就可以根据不同的主机名来访问不同的网站.
三.三种虚拟主机实现的基本配置

①基于IP虚拟主机的实现:
多个ip,需要把中心主机取消

打开web服务的主配置文档:vim /etc/httpd/conf/httpd.conf

DocumentRoot 注释掉
配置虚拟主机:
<VirtualHost 192.168.0.20:80>
DocumentRoot "/www/a.com"
ServerName www.a.com
<VirtualHost/>
<VirtualHost 192.168.0.25:80>
DocumentRoot "/www/b.com"
ServerName www.b.com
<VirtualHost/>

vim /etc/hosts

192.168.0.20 www.a.com

192.168.0.25 www.b.com

浏览器中输入IP地址进行实验效果的验证.

②基于端口:
<VirtualHost 192.168.0.20:80>
DocumentRoot "/www/a.com"
ServerName www.a.com
<VirtualHost/>
<VirtualHost 192.168.0.20:8080>
DocumentRoot "/www/b.com" 拥有帝国一切,皆有可能。欢迎访问phome.net
ServerName www.b.com
<VirtualHost/>

③基于主机名:
开启:NameVirtualHost 192.168.0.20:80
<VirtualHost *:80>
ServerAdmin www.a.com
DocumentRoot /etc/httpd/aaa/a.com
ServerName dummy-host.example.com
ErrorLog logs/dummy-host.example.com-error_log
CustomLog logs/dummy-host.example.com-access_log common
</VirtualHost>
<VirtualHost *:80>
ServerAdmin www.b.com
DocumentRoot /etc/httpd/aaa/b.com
</VirtualHost>
四.案例综合实现

建立http服务器,要求:
1)提供两个基于名称的虚拟主机:
(a)www1.ilinux.org,页面文件目录为/var/www/html/www1;错误日志 为/var/log/httpd/www1.err,访问日志为/var/log/httpd/www1.access;
(b)www2.ilinux.org,页面文件目录为/var/www/html/www2;错误日志为/var/log/httpd/www2.err,访问日志为/var/log/httpd/www2.access;
(c)为两个虚拟主机建立各自的主页文件index.html,内容分别为其对应的主机名;
2)www1主机仅允许192.168.0.0/24网络中的客户机访问;www2主机可以被所有主机访问;

为http服务提供第3个虚拟主机,要求:
1)www3.ilinux.org,页面文件目录为/var/www/html/www3;错误日志为/var/log/httpd/www3.err,访问日志为/var/log/httpd/www3.access;
2)为此虚拟主机提供基本认证功能,并为其提供两个虚拟用户webuser1和webuser2,
密码均为redhat,要求允许此两用户在提供密码的情况下访问此站点;


配置过程如下:

①安装web服务:yum -y install httpd

②进入主配置文档vim /etc/httpd/conf/httpd.conf

<VirtualHost *:80>
DocumentRoot "/var/www/html/www1"
ServerName www1.ilinux.org
Errorlog /var/log/httpd/www1.err 拥有帝国一切,皆有可能。欢迎访问phome.net
CustomLog /var/log/httpd/www1.access common
<

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号