WD1X.COM - 问答一下,轻松解决,电脑应用解决专家
主板显卡CPU内存显示器
硬盘维修显卡维修显示器维修
注册表系统命令DOS命令Win8
存储光存储鼠标键盘
内存维修打印机维修
WinXPWin7Win11Linux
硬件综合机箱电源散热器手机数码
主板维修CPU维修键盘鼠标维修
Word教程Excel教程PowerPointWPS
网络工具系统工具图像工具
数据库javascript服务器
PHP教程CSS教程XML教程

深入剖析IIS 6.0(一)

更新时间:2005-12-30 21:01 作者:45IT收集点击:

关于IIS 6.0的故事一言难尽,如果你已经在IIS技术上有所投资,IIS 6.0无疑是一个动人的、非听不可的话题。鉴于IIS 6.0和以前版本的差别实在太大了,只用一篇文章很难做到面面俱到,所以本文首先探讨IIS 6.0的安装、体系结构以及由于体系结构方面的差异带 来的全新服务功能,下一篇文章接着介绍IIS 6.0的新特性——其中有些你可能还没有听说过,另外还有默认配置方面的一些重要变化,这些变化可能会影响到你的迁移计划。 

  一、安装IIS 6.0 

  首先从最基本的说起吧。IIS 6.0包含在Windows Server 2003服务器的四种版本之中:数据中心版,企业版,标准版,Web版。另外,顺便再回答一个最常见的IIS 6.0问题:IIS 6.0不能在Windows XP、2000或NT上运行。 

  安装好Windows 2003之后,马上就可以看到Windows 2003/IIS 6.0的与众不同之处,其中一个关键的变化是,除了Windows 2003 Web版之外,Windows 2003的其余版本默认不再安装IIS。按照微软过去的理念,安装操作系统的同时IIS也自动启动,为许多Web应用提供服务,Windows 2003的做法可谓一大突破。在Windows 2003中,安装IIS有三种途径:利用“管理您的服务器”向导,利用控制面板“添加或删除程序”的“添加/删除Windows组件”功能,或者执行无人值守安装。 

  第一次启动Windows 2003系统时,“管理您的服务器”向导自动启动
选择“添加或删除”角色,在“配置服务器”向导中可以看到一系列可配置的服务器角色,其中就有“应用程序服务器(IIS,ASP.NET)”选项,如图二,选中该选项之后点击“下一步”,向导提供了是否安装ASP.NET和Microsoft FrontPage服务器扩展的选项。可以看到,微软在这里采用了一种新型的“安装任何部件之前总是征求用户意见”的IIS安装策略,对于微软来说,这是一个彻底的转变,证明微软确实在认真对待安全问题。 

图三 
 也许你已经注意到了表一列出的某些新增组件选项,但你注意到IIS 6.0少了什么吗?IIS 6.0中消失不见的最主要的一个项目是文档。在IIS 6.0中,所有文档都以帮助文件的形式发布,不再有IISHelp虚拟目录。在IIS 5.0中,如果从本地访问服务器,默认Web网站自动打开IIS的文档,但在IIS 6.0中,如果打开http://localhost”,只能看到一个声明网站正在构建之中的页面。 
  另外,在IIS 5.0的IISHelp虚拟目录中有一些错误处理页面,这些错误处理页面以ASP的方式实现。如果你要用到定制的(或者修改过的)帮助文件、错误处理页面,在IIS 6.0网站上必须自己创建该目录。 

  进一步分析IIS 6.0的子组件清单,可以发现:原来在IIS 5.0和IIS 4.0中默认安装的Internet服务管理器(ISM)已经不见了。但是,如果你点击“万维网服务”(IIS 6.0的子组件之一,但图三没有显示出来),再点击“详细信息”,可以发现IIS 6.0的万维网服务还有子组件,如图四所示,其中包括原来的Internet服务器管理器,不过现在已经改名为“远程管理(HTML)”;还有Windows 2003和XP版本的终端服务高级客户端(TSAC)——现在它叫做“远程桌面Web连接”。现在,我们不仅可以方便地添加或删除这两个子组件,对其他子组件也一样,包括:ASP,Internet数据连接器,在服务器端的包含文件,WebDAV发布,当然还有万维网服务。 


图四 

  安装IIS 6.0的最后一种方式是无人值守安装。和以前一样,这仍旧是唯一一种能够将工具和默认Web网站安装到其他驱动器(而不是系统驱动器)的安装方式。Windows 2003无人值守安装方式大体上仍和Win 2K一样,都是用Sysocmgr和一个应答文件实施安装。当然,新的特性需要新的参数、选项,有关这方面的详细说明,可以在Windows 2003 Release Candidate 2 (RC2)找到,地址是http://www.microsoft.com/technet/treeview/default.asp?url=/technet/prodtechnol/windowsnetserver/proddocs/datacenter/gs_installingiis.asp。 
 如果将IIS 5.0或IIS 4.0服务器升级到Windows 2003,IIS 6.0不会被设置成自动启动。也就是说,如果采用升级的方式安装,IIS 6.0默认是禁用的,除非遇到下列情况之一: 
  ⑴ 以前的IIS服务器上已经安装了IIS Lockdown工具。 

  ⑵ 存在注册子键HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W3SVC\RetainW3SVCStatus,且它包含一个任意的注册键。例如,你可以创建一个名为EnableIIS6的键,设定它的值为DWORD类型的1。 

  ⑶ 在无人值守的升级安装中,应答文件的[InternetServer]部分存在DisableWebServiceOnUpgrade = True/False条目。 

  二、支持服务 

  自IIS 6.0发布以来,它的某些新特性一直是人们关注和议论的焦点,成为众人瞩目的明星,但另一些Internet支持服务虽然不是经常有人说起,却同样值得关注,其中之一就是POP3服务和POP3服务Web管理器。我们无从得知微软为何不在“应用程序服务器”组件清单中列出POP3服务,但是继SMTP服务之后(SMTP服务随同POP3服务一起安装),管理员们盼望POP3服务已经很久了,他们一直在期盼着用一个简单的POP3服务来替代庞大的Microsoft Exchange Server。 

  统一描述、发现和集成协议(Universal Description, Discovery, and Integration,即UDDI)服务是Windows 2003提供的又一种新的功能,它也与IIS有关,但默认不安装(注意,Windows 2003 Web版不能安装UDDI)。UDDI是一种产业标准(即不是微软的发明),能够通过广告发布IIS服务器提供的Web服务——这里“广告”一词的含义与日常生活中的广告不同,它是指一种让客户程序(通常是Web浏览器)获知Web服务(通常是ASP.NET应用)各种细节的方式。UDDI仍在发展之中,但一些企业已经在内部采用UDDI,以便开发者将自己的代码发布给其他协作开发的人。有关UDDI的更多知识,可以在下列网站找到http://www.uddi-china.org/(中文)http://www.uddi.org(英文)http://www.uddicentral.com(英文)。 

  最后一种重要的支持服务是后台智能传送服务,即 Background Intelligent Transfer Service或BITS。BITS是一种后台文件传输机制和队列管理器,也称作节流传输服务。BITS控制文件请求,减少带宽消耗并改善最终用户的体验。针对IIS启用BITS可保证Web服务器的服务质量,如果没有BITS,当100个用户同时下载一个500 MB的文件,服务器的带宽可能就被消耗殆尽,导致其他访问Web服务的用户频繁地遇到超时错误。如果BITS就象广告说的那样有效,可以料想它将是一种非常实用的服务。Windows 2003发布之后,按照计划,BITS还将移植到Win2K上。关于BITS的更多信息,请参http://www.microsoft.com/windows.netserver/techinfo/overview/bits.mspx。 

  三、全新的内核 

  从体系结构上看,IIS 5.0和IIS 4.0其实是一样的:它们都是在用户模式下运行的发布Web内容的应用程序,或者在Inetinfo进程之内以System帐户运行,或者在Inetinfo进程之外以IWAM用户运行。虽然在较重的负载下,IIS 5.0也有相当出色的表现;不过从IIS 6.0开始,我们对IIS底层结构的看法应该改变了。为了使IIS不仅能够轻松地支持1000个Web网站,而且能够支持10000个甚至更多的网站,同时还要提高Web服务器的安全性和可靠性,微软放弃了原有的IIS内核,重新构造了一个。 

  另一个促使微软重新构建IIS内核的原因是,微软(以及其他厂商)认识到,Web服务器的性能和可靠性问题绝大部分是由于质量低劣的Web应用造成。IIS 5.0通过带缓冲池的Out of Process容器减轻这类问题。在IIS 5.0中,在Out of Process池中运行的应用一旦崩溃,一般不会波及到IIS本身,因为应用程序在Inetinfo之外的进程中运行,但运行在Out of Process池之内的所有Web应用都会终止——在默认情况下,所有的应用程序都在该池之中运行。在这种情况下,排解故障很不容易,因为要确定哪一个应用程序导致了问题非常困难。IIS 6.0将监听请求、创建和监视Web网站、运行Web服务这些不同的任务隔离了开来,这一新型体系可望解决IIS 5.0存在的问题。从理论上看,新的体系将极大地改善可用性、安全和性能;从实际情况看,根据微软和Beta测试者的报告,新的体系令稳定性和性能有了奇迹般地提高。IIS 6.0的内核体系主要建立在三个组件之上:W3SVC,http.sys,以及W3Core。

顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
你可能感兴趣的内容