使用Apache Server设置虚拟web

原创 2001年07月03日 11:17:00

                                      使用Apache Server设置虚拟web


unix 平台与NT平台使用apache server的设置相同。以下重点以unix平台为例说明apache server的设置。另外值得注意的是,虚拟web的成功设置,有大约
50%的工作量是在域名的注册与解析方面。所以一般先注册好域名然后再做
虚拟WEB设置。 
一 、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.tldwww.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
...

apache web服务器的配置和使用

上篇文章介绍了如何安装、启动apache的web服务器,本文说明如何对其进行配置以达到特殊的功效。 Apache的配置指令分为两类:一类由核心模块如core,http等使用,必须位置httpd.co...
  • zzulp
  • zzulp
  • 2012年12月08日 22:10
  • 5628

discuz 部分伪静态(Apache Web Server-虚拟主机用户)步骤

discuz中如果你的系统信息(首页---->系统信息)是类似于这样的  就看看 伪静态-------------先在管理中心做好准备工作 然后在Apache下的conf文件中找到httpd.co...
  • u010005344
  • u010005344
  • 2014年03月17日 17:34
  • 953

Apache下配置虚拟域名

如何使我们在本地访问我们程序的时候,让url更加优雅呢? 例如: localhost/temp/dongningjun 我想让它这样访问 dongningjun.com 如果你正想这么做那么...
  • sinat_21125451
  • sinat_21125451
  • 2016年04月08日 15:26
  • 1412

windows下安装apache web server全过程(图文)

安装 Apache 2.0.59 双击 apache_2.0.59-win32-x86-no_ssl.msi 文件开始安装。安装过程很简单,一路Next即可。途中要求输入服务器的域名、服务器名及...
  • seaos
  • seaos
  • 2011年12月07日 16:21
  • 7109

Apache Web Server和PHP安装配置

Apache Web Server的安装 1 点击apahce安装包 2 接受协议 3 下面3项随便填即可     apache 监听80 端口.如果iis用了80端口,修改iis端口或者apache...
  • andyelvis
  • andyelvis
  • 2008年11月17日 18:42
  • 3781

[亲测]Apache配置虚拟域名

原先刚接触Apache服务器的时候,觉得配置个虚拟域名是很炫的技能,但你自己研究一下,才发现原来是So easy! Apache配置虚拟域名,主要需要配置两个文件一个是本机的hosts文件,一个是a...
  • helencoder
  • helencoder
  • 2015年11月03日 19:16
  • 4879

Apache 本地配置多个虚拟站点

Article Content Apache 本地配置多个虚拟站点,需要改动的文件有 (这是我本地的目录,wampserver安装的路径不一样,下面的地址相应不一样) ...
  • xiongsha
  • xiongsha
  • 2016年06月29日 14:30
  • 1396

Apache web server 安装、配置简介

一、Apache web server 简介 Apache web server是一款开放源码的web服务器软件,由apache software foundation 开发和维护的。它是目前世界上...
  • my98800
  • my98800
  • 2016年06月21日 10:52
  • 205

设置本地虚拟域名windows+apache

C:\WINDOWS\system32\drivers\etc\hosts 在这个文件中 最下面添加。 127.0.0.1 localhost.com 127.0.0.1 cho.com ...
  • qbz2004
  • qbz2004
  • 2013年12月26日 14:59
  • 2153

Android中如何搭建一个WebServer

今天终于把老大交代的任务搞完了,感觉收获挺多的,所以就写一篇来记录一下吧,首先还是来看一下,老大们的需求 需求: 希望移动端的用户标识(IMEI)和HTML页面的用户标识(Cookie)连接起来,...
  • jiangwei0910410003
  • jiangwei0910410003
  • 2014年06月01日 14:44
  • 37901
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:使用Apache Server设置虚拟web
举报原因:
原因补充:

(最多只允许输入30个字)