目前,使用Windows 2003作为Web服务器的学校越来越多,然而对于用惯了Windows 2000/NT的用户来说,如果想要架设一台完备、安全、可靠的Windows 2003服务器,可能会遇到很多意想不到的问题。笔者根据两年来亲身实践的体会,重点针对学校中较常使用的Web服务的特点,结合与Windows 2000的区别进行重点阐述。
1. IIS 5.0 隔离模式
IIS 5.0隔离模式按照与IIS 5.0 中的进程管理相似的方式管理应用程序进程:所有的进程内应用程序都在Inetinfo.exe内运行,进程外应用程序在单独的DLL宿主中运行。
2. IIS 6.0工作进程隔离模式
当配置为在工作进程隔离模式下执行时,所有的应用程序代码都在隔离环境中运行。这种设计消除了一些现有的瓶颈。工作进程隔离模式允许管理员将任何内容(从单个 Web 应用程序到多个站点)隔离到独立的工作进程中。
Windows 2003同时支持两种工作模式,默认为ISS 6.0工作进程隔离模式。工作进程隔离模式防止一个应用程序或站点停止了而影响另一个应用程序或站点,大大增强了IIS的可靠性。那么如何设置两种工作模式呢?
启动IIS管理器,右击网站,选择“属性”,打开属性对话框(图1)。在IIS 6.0工作进程隔离模式下,所有的应用程序代码都在隔离环境中运行,它们是如何进行隔离的呢?Windows 2003新增了应用程序池,工作进程隔离模式允许客户创建多个应用程序池,每个应用程序池都可以有不同的配置。因为这些应用程序池直接从内核(而非WWW服务)接收它们的请求,所以性能和可靠性得到了增强。要隔离运行在同一台计算机上但属于不同网站的Web应用程序,需要为每个网站创建单独的应用程序池。
图1 打开IIS属性对话框
那么,什么是应用程序池呢?这是微软的一个全新概念:应用程序池是将一个或多个应用程序链接到一个或多个工作进程集合的配置。因为应用程序池中的应用程序与其他应用程序被工作进程边界分隔,所以某个应用程序池中的应用程序不会受到其他应用程序池中应用程序所产生的问题的影响。
3. 创建应用程序池
在IIS管理器中,打开本地计算机,右键单击“应用程序池”,选择新建“应用程序池” (必须在工作进程隔离模式下才能建立应用程序池) 。“应用程序池名称”框中,输入新的应用程序池名称。如果在“应用程序池 ID”框中出现的 ID (如:AppPool #1)不是您想要的,可进行重命名。如果您单击了“将现有应用程序池作为模板”,请在“应用程序池名称”框中右键单击想要用来作为模板的应用程序池。最后单击[确定]。
4. 指派应用程序池
在 IIS 管理器中,右键单击您要为其指派应用程序池的应用程序,然后单击“属性”。 单击“主目录”选项卡,确认您正在指派的目录或虚拟目录的“应用程序名”是否已被填写。如果“应用程序名”框尚未被填写,请单击“创建”,然后输入名称。
在“应用程序池”列表框中,选择您想要为其指派的应用程序池的名称。最后单击[确定](图2)。
图2 新创建的应用程序池名
……