1、http:/ Web 服务器上的虚拟主机默认分类 2009-11-30 20:06 阅读 14 评论 0 字号: 大 中 小 我们知道 IIS 实现虚拟主机有三种方法,IP ,端口和主机头,一般在工作中大都采用主机头区分虚拟主机。既然如此,那在发布虚拟主机时,我们就可以依靠访问者提交的主机头来匹配发布规则,恰好 ISA 又有转发原始主机头的功能,这下子问题就全都解决了。举个例子来说明,实验拓扑和上篇博文中一样,Denver 和 Perth 是内网的两台 Web 服务器。现在Denver 上有两个网站,分别是 和 ,我们的目标就是把这两个虚拟主机发布到外网。这个目标实现起来并不难,在 ISA
2、上为 Denver 的两个网站各自创建一条发布规则,两条发布规则依靠公共名称区分两个网站,然后 ISA 启用转发原始主机头功能,这样就一切 OK 了。当外网访问 时,ISA 根据访问域名匹配发布规则,然后按照发布规则的要求将原始主机头 转发给 Denver,Denver 根据转发来的原始主机头就可以判断出访问者要访问哪个虚拟主机,然后将目标网站的内容返回给访问者。实验步骤如下:一 准备虚拟主机在 Denver 上准备好两个虚拟主机,如下图所示,我们在 Denver 的 IIS 中看到了两个网站,www 和mail。两个网站的主机头分别是 和 。,如下图所示。用浏览器访问,两个网站都访问正常,
3、如下图所示。OK ,实验用的虚拟主机已经准备好了!二 在 ISA 上创建访问规则上篇博文中我们在 ISA 上创建了两条发布规则,这次实验我们只要把发布规则复制一下再稍作修改就可以了。如下图所示,我们在发布 的规则上点击右键,选择“复制” 。然后在发布规则上点击右键,如下图所示,选择“粘贴”。这样我们就有了两条发布规则,我们只要修改这两条规则就可以满足发布虚拟主机的需求。首先修改第一条发布规则,我们要利用这条规则发布 denver 上的 ,如下图所示,在规则属性的常规标签中,修改规则的名称为“ 发布内网的 ”。切换到规则属性的“公共名称”标签,编辑原有的公共名称 ,如下图所示,把公共名称修改为
4、 。切换至规则属性的“到”标签,如下图所示,勾选“转发原始主机头而不是内部站点名称字段中指定的实际主机头 ”,这是关键之处,它要求 ISA 将访问者的原始主机头转发给 Web 服务器,Web 服务器正式凭借原始主机头才能判断出访问目标是哪个虚拟主机。好了,为发布 而修改的规则已经完成,接下来我们要修改第二条发布规则,让它能够发布 。如下图所示,在第二条发布规则属性的“常规” 标签中,修改规则名称为“发布内网的 ”。切换到规则属性的“公共名称”标签,编辑原有的公共名称 ,如下图所示,把公共名称改为 。切换到规则属性的“到”标签,勾选“ 转发原始主机头而不是内部站点名称字段中指定的实际主机头 ”。修改后的发布规则如下图所示。三 在客户机上测试在 ISA 上做好发布规则后,我们在 Istanbul 上测试一下,首先 Istanbul 仍然是利用简单的 Hosts 文件进行域名解析,解析结果如下图所示。测试一下,先访问 ,如下图所示,非常理想。再来测试一下 ,如下图所示,一切正常, OK,实验成功!做了这么多工作,其实发布虚拟主机关键之处就是要在 ISA 上转发原始主机头,掌握了这点,就基本上能够掌控全局了!