Windows Server 2008是一个集互联网信息服务(IIS 7.0)、ASP.NET、Windows Communication Foundation以及Windows Share Point Services于一身的平台。IIS 7.0是对现有的IISWeb服务器的重大改进,并在集成网络平台技术方面发挥着重要作用。IIS 7.0的主要特征包括提供了更加有效的管理工具,提高了安全性能以及减少了支持费用。这些特征使集成式的平台能够为网络解决方案提供集中式的、连贯性的开发与管理模型。
IIS 7.0是对现有的IISWeb服务器的重大改进,并在集成网络平台技术方面发挥着重要作用。与以前版本Windows中整合的IIS相比,IIS 7.0加入了更多的安全方面的设计,用户现在可以通过微软公司的.NET语言来运行服务器端的应用程序。除此之外,通过IIS 7.0新的特性来创建模块将会减少代码在系统中的运行次数,将遭受黑客脚本攻击的可能性降至最低。总的来说,IIS 7.0中有5个最为核心的增强特性。
1.完全模块化
熟悉ApacheWebServer的用户肯定知道这款软件最大的优势就在于定制化,用户可以配置为只能显示静态的HTML,也可以动态加载不同的模块以允许不同类型的服务内容。而以前版本的IIS却无法很好地实现这一特性,并且会导致两方面的问题:一是由于过多用户并未使用的特性对于代码的影响,性能方面有时不能让用户满意;二是由于默认的接口过多所造成的安全隐患。而IIS 7.0就解决了这个问题,它在核心层被分割成了40多个不同功能的模块,诸如验证、缓存、静态页面处理和目录列表等功能全部被模块化,这意味着Web服务器可以按照用户的运行需要来安装相应的功能模块。这样可能存在安全隐患和不需要的模块将不会再加载到内存中去的情况,程序的受攻击面减小了,同时性能方面也得到了增强。
2.通过文本文件配置
IIS 7.0在管理工具中使用了新的分布式web.config配置系统。IIS 7.0不再拥有单一的metabase配置储存,而是使用和ASP.NET支持的同样的web.config文件模型,允许用户把配置和Web应用的内容一起存储和部署。无论有多少站点,用户都可以通过web.config文件直接配置,这样当设备需要挂接大量的网站时,管理员只需要复制之前做好的任意一个站点的web.config文件,然后把设置和Web应用一起传送到远程服务器上就可以在很短的时间之内完成。同时,管理工具支持委派管理功能,可以将一些确定的web.config文件通过委派的方式委派给网络中其他的用户,这样就不用为站点的每一个微小变化而费心。版本控制同样简单,用户只需要在组织中保留不同版本的文本文件,然后在必要的时候恢复它们就可以了。
3.图形模式管理工具(www.daowen.com)
IIS4.0到IIS 6.0提供给用户的管理控制台操作起来并不十分方便,而且由于技术等原因的限制,用户很难通过统一的界面来实现全部的管理工作。在IIS 7.0中,用户可以用管理工具在Windows客户端上创建和管理任意数目的网站,而不再局限于单个网站。和以前版本的IIS相比,IIS 7.0的管理界面也更加友好和强大,再加上IIS 7.0的管理工具是可以被扩展的,意味着用户可以添加自己的模块到管理工具里,为自己的Web网站运行时模块和配置设置提供管理支持。
4.安全方面的增强
以前版本的IIS安全问题主要集中在有关.NET程序的有效管理以及权限管理方面,而IIS 7.0正是针对IIS服务器遇到的安全问题而进行了相应的改进。在IIS 7.0中,ASP.NET管理设置集成到单个管理工具中,用户可以在一个窗口中查看和设置认证和授权规则,而不需要像以前那样要通过多个不同的对话框来进行操作,这给管理人员提供了一个更加集中和清晰的用户界面,以及Web平台上统一的管理方式。在IIS 7.0中,.NET应用程序直接通过IIS程序运行而不再发送到Internet Server API扩展上,这样就减少了可能存在的风险,并且提升了性能,同时管理工具内置对ASP.NET3.0的成员和角色管理系统提供管理界面的支持,这意味着用户可以在管理工具中创建和管理角色和用户以及给用户指定角色。
5.集成ASP.NET
在以前版本的IIS中,开发人员需要编写ISAPI扩展以及过滤器来扩展服务器的功能。除了开发人员编写麻烦,ISAPI在如何接入服务器以及允许开发人员定制方面也是非常有限。例如,ASP.NET是以ISAPI扩展的方式实现的,无法在ISAPI扩展中实现URL重写代码,如果把运行时间长的程序编写成ISAPI过滤器,结果是将占用Web服务器的I/O线程,而这也正是不让托管程序在请求的过滤器执行阶段运行的原因。IIS 7.0中的重大变动不仅是ASP.NET本身从以ISAPI的实现形式变成直接接入IIS 7.0管道的模块,还能够通过一个模块化的请求管道架构来实现丰富的扩展性。用户可以通过在Web服务器注册一个HTTP扩展性模块,在任一个HTTP请求周期的任何地方编写程序。这些扩展性模块可以使用C++程序或者.NET托管程序来编写。同时认证、授权、目录清单支持、经典ASP、记录日志等功能,都可以使用这个公开模块化的管道API来实现。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。