全部博文(1015)
分类:
2011-04-19 13:18:30
一般的web服务器一个ip地址的80端口只能正确对应一个网站,处理一个域名的访问请求。而web服务器在不使用多个ip地址和端口的情况下,如果需要支持多个相对独立的网站就需要一种机制来分辨同一个ip地址上的不同网站的请求,这就出现了主机头绑定的方法。举个例子来说,一台服务器ip地址为192.168.1.10,有两个域名和对应的空间在这台服务器上,使用的都是192.168.1.10的80端口来提供服务。
定义
所谓的主机头的叫法起自IIS中对域名绑定的功能,简单的说就是,将不同的网站空间对应不同的域名,以连接请求中的域名字段来分发和应答正确的对应空间的文件执行结果。
主机头绑定功能
如果只是简单的将两个域名A和B的域名记录解析到这个ip地址,那么web服务器在收到任何请求时反馈的都会是同一个网站的信息,这显然达不到要求。接下来我们使用主机头绑定域名A和B到他们对应的空间文件夹C和D。当含有域名A的web请求信息到达192.168.1.10时,web服务器将执行它对应的空间C中的首页文件,并返回给客户端,含有域名B的web请求信息同理,只不过解释的是空间D的文件。所以在使用主机头绑定功能后就不能使用ip地址访问其上的任何网站了,因为请求信息中不存在域名信息,所以会出错。
并非使用了主机头绑定功能后就不能使用ip地址访问其上的任何网站。同个端口可以绑定多个主机头,只需要再添加一个绑定,将主机头那栏留空不写即可用IP访问.
一个ip地址上建立多个web站点
由于各种原因,我们有时候需要在一个ip地址上建立多个web站点,在iis5中,我们可能通过简单的设置达到这个目标.
在iis中,每个 web 站点都具有唯一的、由三个部分组成的标识,用来接收和响应请求:
(1) ip地址
(2)端口号
(3)主机头名。
在iis中,在一个ip地址上建立多个独立的web站点,通常有两种方法,本文以以例子的形式介绍主机头法,使用这种方法可以建立起专业的虚拟主机.
主机头法建立虚拟主机示例
环境:假设**公司(呵呵...)用一台win2000服务器提供虚拟主机服务,地址是192.168.1.10.在这台服务器已经安装了internet服务即iis5.
现在公司要求网络管理员在服务器上使用一个ip为abcd四个公司建立独立的网站,每个网站拥有自己独立的域名.四家网站域名分别为:
通过使用主机头,站点只需一个 ip 地址即可维护多个站点。客户可以使用不同的域名访问各自的站点,根本感觉不到这些站点在同一主机上.
具体操作如下:
1.在win2000服务器为四家公司建立文件夹,做为web站点主目录.如下: web站点主目录 web站点
d:\web\a a公司网站
d:\web\b b公司网站
d:\web\c c公司网站
d:\web\d d公司网站
2.使用web站点管理向导,分别四家公司建立独立的web站点,四者最大的不同是使用了不同的主机头名:
a公司站点 b公司站点 c公司站点 d公司站点
ip地址 192.168.1.10
tcp端口 80
权限 读取和运行脚本
主机头名
站点主目录 d:\web\a d:\web\b d:\web\c d:\web\d
在dns中将这四个域名注册上,均指向同一地址:192.168.1.10.这样,客户端就可以通过:
http://访问a公司站点.
http://访问b公司站点.
http://访问c公司站点.
http://访问d公司站点.
3.每个站点的主机头名可以在web站点建立向导中设置,它与站点的ip地址,tcp端口在同一屏上.也可能通过该站点->"属性"->"web站点"标签->选ip地址右边的"高级"按钮,跳出"高级多web站点配置"进行配置.
这种方法建立可以建立专业的虚拟主机,几乎所有使用iis提供虚拟主机的公司都这样做的。
(二)还有一种方法是TCP不同端口法,比较简单,就是把端口设置不同就是了,比如8080:8010等,这种方式一般不采用。