欢迎 matrix 加入本站!
 免费注册  用户登陆  汇款方式  汇款确认  产品报价  联系我们  帮助中心
加入收藏
设为首页
会员体系
申请VIP
网站首页 光盘超市 软件下载 技术文章 专题 用户中心 VIP会员 技术论坛 网站留言 娱乐中心 卓越资源
今天是:2008年09月09日 星期二  您现在位于: 首页 → 技术文章 → Apache 虚拟服务...
   Apache 虚拟服务器
作者:  出处:Unix爱好者家园unix-cd.com  更新时间: 2006年05月16日 
一 、IP 型虚拟主机

  IP 型虚拟主机指每一虚拟主机对应唯一的 IP。可通过多个物理网卡或虚拟网口实现多 IP,Solaris2.5 和 Windows NT 都支持这种方式。

  两种配置多虚拟主机的方法:

  1、为每一虚拟主机启动一个 httpd 进程。

  下列情况下使用此方法:

  ★需考虑安全隔离问题,如两个 httpd 运行于不同的 User、Group、Listen、ServerRoot,两者用户除通过 Web 相互浏览数据,无法访问其他数据。

  ★能提供足够内存和文件描述器。

  设置方法:

  为每一虚拟主机建立一个独立的 httpd 安装,在每一个安装路径的配置文件 httpd.conf 里,用 Listen 指令指定进程服务的 IP,如:

  Listen 10.68.37.10:80

  2、为所有虚拟主机启动一个 httpd 进程。

  下列情况下使用此方法:

  ★允许在虚拟主机间共享 httpd 配置。

  ★计算机服务于大量的请求,运行多个进程使服务器性能降低成为重要考虑因素。

  设置方法:

  在配置文件 httpd.conf 里,用 VirtualHost 指令为每一虚拟主机设置 ServerAdmin、ServerName、documentRoot、 ErrorLog、TransferLog 或 CustomLog,如:

  #此处建议用 IP

  ServerAdmin webmaster@mail.smallco.com

  documentRoot /usr/local/etc/httpd/htdocs/smallco

  ServerName www.smallco.com #建议此处用域名

  ErrorLog /usr/local/etc/httpd/logs/smallco/error_log

  TransferLog /usr/local/etc/httpd/logs/smallco/access_log

  #此处建议用 IP

  ServerAdmin webmaster@mail.baygroup.org

  documentRoot /groups/baygroup/www

  ServerName www.baygroup.org #建议此处用域名

  ErrorLog /groups/baygroup/logs/error_log

  TransferLog /groups/baygroup/logs/access_log

  同时要做虚拟网口或网卡的配置,在 DNS 也要做相应设置。

  二 、名字型虚拟主机(Apache1.3 以上版本支持)

  IP型虚拟主机虽好,但不是最佳方案。它要求每一虚拟主机有一专用IP,在某些机器上难于实现。

  名字型虚拟主机是指每一虚拟主机的名字不相同,但 IP 一样。它的好处是不限制虚拟主机数量,配置、使用简单,不需另外的软硬件。缺点是客户端必须支持该部分协议,最近版本的浏览器都支持,某些老版本浏览器不支持。但 Apache 为此提供了解决方法。

  设置方法:

  在配置文件 httpd.conf 里,用 NameVirtualHost 指令设置虚拟主机,如:

  NameVirtualHost 111.22.33.44

  #建议此处用 IP

  ServerName www.domain.tld #建议此处用域名

  documentRoot /web/domain

  同时,在 DNS 定义www.domain.tld 指向 111.22.33.44。

  注意:当在 NameVirtualHost 指令后使用 IP 时,任何使用 IP 的 URL 请求都是针对虚拟主机的,主服务器从不会响应一个使用 IP 的 URL 请求。

  另外,有些服务器希望以多个名字被访问。例如,假设有某一IP的服务器,希望以名 domain.tld、www2.domain.tld 都能被访问,做法是在 VirtualHost 指令部分使用 ServerAlias 指令。如:

  ServerAlias domain.tld *.domain.tld

  另附一些虚拟主机的设置实例。 

  附:虚拟主机设置实例

  IP 型的虚拟主机配置

  Setup 1: 服务器有两个 IP,

  111.22.33.44 server.domain.tld

  111.22.33.55 www.otherdomain.tld

  www.domain.tld 是 server.domain.tld 的别名(CNAME),代表主服务器。

  服务器配置:

  ...

  Port 80

  documentRoot /www/domain

  ServerName www.domain.tld

  documentRoot /www/otherdomain

  ServerName www.otherdomain.tld

  ...

  Setup 2: 基本同 Setup1,但不设置专门的主服务器。

  服务器配置:

  ...

  Port 80

  ServerName server.domain.tld

  documentRoot /www/domain

  ServerName www.domain.tld

  ...

  documentRoot /www/otherdomain

  ServerName www.otherdomain.tld

  ...

  这种设置只有当 URL 为 http://server.domain.tld 时才击中主服务器 

  Setup 3:服务器有两个 IP,

  111.22.33.44 server.domain.tld

  111.22.33.55 www-cache.domain.tld

  www.domain.tld 是 server.domain.tld 的别名(CNAME),代表主服务器。

  www-cache.domain.tld 是 proxy-cache,端口是 8080,Web 服务器使用默认的 80。

服务器配置: 

  ...

  Port 80

  Listen 111.22.33.44:80

  Listen 111.22.33.55:8080

  ServerName server.domain.tld

  documentRoot /www/domain

  ServerName www.domain.tld

  ...

  ServerName www-cache.domain.tld

  ...

  order deny,allow

  deny from all

  allow from 111.22.33

  名字型虚拟主机配置

  Setup 1: 服务器有一个 IP,

  111.22.33.44 server.domain.tld. 

  www.domain.tld 和 www.sub.domain.tld 是别名(CNAMEs) 。 

  服务器配置: 

  ...

  Port 80

  ServerName server.domain.tld

  NameVirtualHost 111.22.33.44 

  documentRoot /www/domain

  ServerName www.domain.tld

  ...

  documentRoot /www/subdomain

  ServerName www.sub.domain.tld

  ...

  若使用IP访问服务器,由于 www.domain.tld 有最高优先级,被认为是默认服务器或第一服务器。

  Setup 2:服务器有两个 IP,

  111.22.33.44 server1.domain.tld 用于主服务器

  111.22.33.55 server2.domain.tld 用于虚拟主机别名 www.domain.tld 用于主服务器

  别名 www.otherdomain.tld 用于一个虚拟主机,别名 www.sub.domain.tld,*.sub.domain.tld 用于另一虚拟主机,服务器配置: 

  ...

  Port 80

  ServerName www.domain.tld

  documentRoot /www/domain

  NameVirtualHost 111.22.33.55

  documentRoot /www/otherdomain

  ServerName www.otherdomain.tld

  ...

  documentRoot /www/subdomain

  ServerName www.sub.domain.tld

  ServerAlias *.sub.domain.tld

  ...

  混合型(IP/名字)虚拟主机配置

  Setup:服务器有三个 IP,

  111.22.33.44 server.domain.tld 用于名字型虚拟主机

  111.22.33.55 www.otherdomain1.tld 用于 IP 型虚拟主机

  111.22.33.66 www.otherdomain2.tld 用 于IP 型虚拟主机

  服务器配置:

  ...

  Port 80

  ServerName server.domain.tld

  NameVirtualHost 111.22.33.44

  documentRoot /www/domain

  ServerName www.domain.tld

  ...

  documentRoot /www/subdomain1

  ServerName www.sub1.domain.tld

  ...

  documentRoot /www/subdomain2

  ServerName www.sub2.domain.tld

  ...

  documentRoot /www/otherdomain1

  ServerName www.otherdomain1.tld

  ...

  documentRoot /www/otherdomain2

  ServerName www.otherdomain2.tld

  ...

  端口型虚拟主机配置

  Setup: 服务器有一个 IP,

  111.22.33.44 www.domain.tld

  不需要另外的别名或 IP,采用端口型虚拟主机即可设置一个配置有别于主服务器的虚拟主机。 

  服务器配置: 

  ...

  Listen 80

  Listen 8080

  ServerName www.domain.tld

  documentRoot /www/domain

  documentRoot /www/domain2

 (本文已被浏览 3398 次)
 发布人:sdccf
 → 推荐给我的好友
上篇文章:Windows2000上ApacheJserv+gn...
下篇文章:Apache 主要配置文件全攻略
 相关文章:
增加Apache最大连接数的方法详细介绍 CentOS下Apache 2.x的安装、优化及安全设置
Linux下Resin+JSP+MySQL的安装和配置 如何测试和调试Apache服务器
Ubuntu 6.10 Linux php+mysql web配置 Linux下配置功能完善的Web服务器
Linux Apache服务器系统的设置与优化 Linux下Resin+JSP+MySQL的安装和配置
Apache+PHP5.0+GD+Zend+Mysql的配置 linux下的php扩展方法
利用IP别名托管多个SSL网络服务站点 redhat 9下配置APACHE2+PHP5+MYSQL5+GD库
FreeBSD下整合Apache和Tomcat Linux限制apache的每隔IP访问的并发数
Apche访问日志 优化Apache服务器的性能
Linux下MySQL+Apache+php安装方法 在Ubuntu Linux 上架设Web服务器详解
Apache 服务器 Log 分析应用实例 Linux下增加Apache的rewrite Module

相关搜索
查看百度中关于Apache 虚拟服务器的更多内容
查看google中关于Apache 虚拟服务器的更多内容
   文章分类
操作系统 |
SCO_UNIX  Sun_Solaris  IBM_AIX  HP_UX  Linux  BSD  Tru64_UNIX 
通用UNIX知识  Windows  Minix 
程序设计 |
Shell编程  C/C++  汇编  PHP  JAVA  Perl  Python 
ASP/HTML  XML  中间件 
数据库 |
Oracle  Informix  Sybase  Fox  DB2  SQL  MySQL 
PostgreSQL 
网络应用 |
网络应用 
计算机硬件 |
计算机主机  打印机  路由器  交换机  终端  磁带机  MO 
刻录机  终端服务器  调制解调器 
   文章评论
  → 评论内容 (点击查看)   共0条评论,每页显示5条评论   浏览所有评论
(没有相关评论)
  → 发表我的评论
您的姓名: 您的Email:
评论内容:
250字内
发表评论:      发表评论须知 →
  • 尊重网上道德,遵守《全国人大常委会关于维护互联网安全的决定》及中华人民共和国其他各项有关法律法;
  • 本站有权保留或删除您发表的任何评论内容;
  • 关于我们 ┋  网站留言 ┋  网站地图 ┋  友情链接 ┋  与我在线 ┋  汇款确认 ┋  管理 ┋  TOP
    Linux.Unix爱好者家园  http://www.unix-cd.com/
    联系我们:sdccf@163.com
    腾讯QQ: 7644599
    备案序号:鲁ICP备05000455号
    Copyright (c) 1999-2007 Unix-cd.com. All Rights Reserved.