【IT168 服务器频道】ServerCore是WindowsServer2008开始引入的一个最小安装选项,具有很少的GUI,采用命令行,支持少数的服务器角色,体积小,安全而高效。但Win2008中的ServerCore虽然支持Web角色,但是不支持.NETFramework和ASP.net,虽然提高了安全性,但是对用户的Web应用产生很大限制。在Win2008R2中ServerCore提供了对ASP.Net的支持,丰富了IIS的功能,除了不支持IIS的GUI管理界面,其他功能基本是完全的,为用户增加了应用的灵活性。在下文中我们将讨论如何在Win2008R2的ServerCore中安装可选的ASP.Net,并启用IIS。
一、简介
WindowsServer2008/R2的用户对于ServerCore这个安装选项可能不会陌生,但Win2008的ServerCore不支持ASP.NET而饱受诟病。而Win2008R2为Web用户带来一个好消息,开始提供对.NETFramework子集和ASP.NET的支持,并且这些功能是可选的,如果用户不需要就不用安装,保证系统的精简和安全性。Win2008R2中ServerCore的可选功能包括:
·支持 .NET Framework 2.0子集
·支持 .NET Framework 3.0和3.5子集,包括WCF、WF、LINQ等开发工具
·提供对PowerShell的支持
·提供ASP.Net支持,丰富了IIS的功能,除了不支持IIS的GUI管理界面,其他功能基本都是完全的。
·提供ActiveDirectoryCertificateServices服务器角色,即活动目录验证服务,可以成为CA服务器管理用户、计算机的公钥。
·Windows Server 2008R2完全架构于64位,但其ServerCore可以通过WindowsonWindows(WOW)功能支持32位的应用程序,如果用户还需要运行32位程序的话,这个功能还是比较有用。
Windows Server 2008R2的ServerCore包含了.NETFramework2.0/3.0/3.5的子集,这使得ServerCore几乎可以支持ASP.NET的所有特性,但是还有一些限制需要注意:
·没有内置的管理控制台,配置和管理ServerCore中的APS.NET站点需要在安装了IIS管理控制台的客户端计算机上远程进行管理,或者通过ServerCore中的APPCMD工具,使用命令行控制台对IIS站点和应用进行更加全面的管理。
·没有System WebMail命名空间,因为ServerCore中不含CDOSYS组件,因而也不支持SystemWebMail命名空间,使用SystemNetMail可以实现相同的功能。
·Windows Serve 2008 R2的Server Core不支持Web应用工具(WAT)。
二、安装Web服务器角色
我们通过Hyper-v来搭建演示环境,创建好两个虚拟机后,拓扑图和服务器名称、IP地址、用户名和密码按照下图来配置:
试验拓扑图
Client VM: Win2K8R2Dev,安装Win2008, 作为客户端,IP=10.0.0.1
Server VM: Win2K8R2Core,安装Server Core, 作为Web服务器,IP=10.0.0.3
用户1: Administrator, p@ssw0rd
用户2: student1, p@ssw0rd
1、用student1帐户登录安装Serve Core的Win2K8R2Core服务器。
2、在命令行窗口中输入下述命令,察看已经启动和关闭的可选特性:
dism /online /get-features /format:table
需要注意的是Deployment Image ServicingandManagement(DISM)工具是修改ServerCore安装的首要工具。
3、应用下述命令明确ASP.NET功能的配置状态:
dism /online /get-features /format:table | find /I “ASP”
4、DISM提供了一个额外的需要事先启用的功能列表:
dism /online /enable-feature /featurename:IIS-ASPNET
5、在安装WebServer角色、IIS和相关功能之前,需要确定.NETFramework是否已经被安装,应用DISM工具可以安装.NETFramework2.0/3.0,可以通过下述命令安装:
dism /online /enable-feature/featurename:NetFx2-ServerCore
dism /online /enable-feature/featurename:NetFx3-ServerCore
注意featurename参数是对大小写敏感的。
6、之后我们要为服务器配置Web服务器角色,可以通过下述命令实现:
dism /online /enable-feature/featurename:IIS-WebServerRole
随后需要在IIS7上启用ASP.NET,这就需要为服务器安装IIS-ASPNET角色,这一步是非常重要的,安装成功才能启用ASP.NET。但在安装IIS-ASPNET角色之前需要安装三个附加的角色:IIS-ISAPIFilter、IIS-ISAPIExtensions和IIS-NetFxExtensibility,可以通过下述命令安装:
dism /online /enable-feature /featurename:IIS-ISAPIFilter
dism /online/enable-feature/featurename:IIS-ISAPIExtensions
dism/online/enable-feature/featurename:IIS-NetFxExtensibility
三个附加角色安装成功后,才能安装IIS-ASPNET,还是通过dism命令:
dism /online /enable-feature /featurename:IIS-ASPNET
7、验证IIS服务是否已经开始运行:
sc query w3svc
三、安装IIS管理服务
至此,你的ServerCore服务器已经可以支持ASP.NET应用,但是,现在ServerCore中并没有Win2008那样具有GUI的IIS管理控制台,这时候如果用户需要创建Web站点和Web应用,有两种方法可以实现:第一种是采用appcmd.exe命令行工具,在Windows系统文件夹中可以找到;或者开启IIS管理服务,通过IIS远程客户端的IIS管理控制台来创建。
相比之下采用远程IIS控制台的方法要更加简单容易操作,下面我们来看看如何实现:
1、选择远程管理控制台选项,并安装IIS管理服务:
dism/online/enable-feature/featurename:IIS-ManagementService
2、需要安装WAS-WindowsActivationService和WAS-ConfigurationAPI:
dism/online/enable-feature/featurename:WAS-WindowsActivationService
dism/online/enable-feature/featurename:WAS-ConfigurationAPI
3、安装成功后,还需要更改一些注册表键值来激活管理服务:
RegAddHKLM\Software\Microsoft\WebManagement\Server/VEnableRemoteManagement/TREG_DWORD /D 1
4、至此IIS管理服务已经安装好,但是需要注意的是默认情况下服务是处于停止状态的,如果需要IIS管理服务进入开启状态,需要通过netstart命令启用,这点非常重要:
net start wmsvc
5、检查IIS管理服务是否已经正常启动:
sc query wmsvc
至此,在Win2008R2ServerCore中安装ASP.NET和IIS管理服务就完成了,我们现在的工作为在ServerCore中发布Web站点做好了准备,可以看到过程并不繁琐