在域控制器上ASP.NET出现症状解决方案

运维 系统运维
ASP.NET 在域控制器上使用默认,而ASP.NET 帐户不能正常运行!出现这种症状的原因是什么?如何解决呢?本文则给出了详细解答。

症状

域控制器或备份域控制器上安装MicrosoftVisualStudio.net或Microsoft.NETFramework后,如果您尝试运行ASP.NET应用程序,则浏览器会显示下面的错误信息:

 

  1. ServerApplicationUnavailable  
  2.  
  3. TheWebapplicationyouareattemptingtoAccessonthiswebserveriscurrentlyunavailable.  
  4.  
  5. Pleasehitthe"Refresh"buttoninyourwebbrowsertoretryyourrequest.  
  6.  

 

此外,系统应用程序事件日志中会记录以下事件:

 

  1. aspnet_wp.execouldnotbelaunchedbecausetheusernameand/orpasswordsuppliedintheprocessModelsectionoftheconfigfileareinvalid.  
  2.  
  3. aspnet_wp.execouldnotbestarted.  
  4.  
  5. HRESULTforthefailure:80004005此问题涉及Internet信息服务(IIS)5.0版或更高版本。  
  6.  

 

原因

默认情况下,为了提供更安全的环境,ASP.NET用权限较弱的帐户(名为ASPNET的本地计算机帐户)运行其辅助进程(Aspnet_wp.exe)。在域控制器或备份域控制器上,所有的用户帐户都是域帐户,而不是本地计算机帐户。因此,Aspnet_wp.exe会由于找不到名为“localmachinename\ASPNET”的本地帐户而无法启动。若要在域控制器上提供有效的用户帐户,必须在Machine.config文件的<processModel>部分指定显式帐户,或者必须使用SYSTEM帐户。

注意

如果在尝试浏览页面之前尝试进行调试(单击启动按钮),也会遇到这一问题。

解决方案

要解决此问题,请使用下列方法之一:创建具有正确权限的弱帐户,然后配置Machine.config文件的<processModel>部分以使用该帐户。在Machine.config文件的<processModel>部分,将userName属性设置为SYSTEM。配置Machine.config文件的<processModel>部分以使用管理员帐户。

注意

在ASP.NET1.1中,ASPNET的进程标识为IWAM_MachineName,所以不存在此问题。

注意

如果允许ASP.NET应用程序作为SYSTEM或管理员帐户运行,将带来严重的安全问题。如果使用其中的任一种替代方法,在Aspnet_wp.exe进程中运行的代码都将有权访问域控制器和域设置。从Aspnet_wp.exe进程启动的可执行文件在相同的上下文中运行,它们也有权访问域控制器。

因此,Microsoft建议使用***种替代方法。若要使用***种替代方法,请按照下列步骤操作:在计算机上创建名为ASPUSER的用户帐户,然后将此帐户添加到用户组中。

注意

如果更改了.NETFramework创建的ASPNET帐户的密码,也可以使用该帐户。您必须知道此帐户的密码,因为需要在后面的步骤中将该密码添加到<processModel>部分。授予ASPUSER或ASPNET帐户“作为批处理作业登录”用户权限。确保此更改出现在“本地安全策略”设置中。

注意

若要向此帐户授予“作为批处理作业登录”用户权限,可能必须在以下每一个安全策略中都授予此用户权限(从控制面板/管理工具开始操作):

域控制器安全策略域安全策略本地安全策略

注意

您可能必须重新启动服务器以使这些更改生效。确保ASPUSER或ASPNET帐户有权访问启动Aspnet_wp.exe进程和为ASP.NET页提供服务所必需的全部目录和文件。有关必须授予此帐户何种权限的其他信息,请单击下面的文章编号,以查看Microsoft知识库中相应的文章:317012INFO:ASP.NET中的进程和请求标识

http://www.mscto.com

打开Machine.config文件。该文件的路径是:%Systemroot%\Microsoft.NET\Framework\v1.0.3705\CONFIG。在Machine.config文件的<processModel>部分,将userName和password属性更改为您在***步中创建的帐户的名称和密码。例如:

userName="DomainName\ASPUSER"password="ASPUSERPassword"  

保存对Machine.config文件所做的更改。

状态

Microsoft已经确认这是本文开头列出的Microsoft产品中存在的错误。此错误在ASP.NET(包括在.NETFramework中)1.1版中得到了纠正。

ASP.NET 在域控制器上使用默认,而ASP.NET 帐户不能正常运行的症状相信大家也遇见过,知道解决方案了大家就自己动手排除这个小故障吧。

【编辑推荐】

  1. 域控制器的灵活运用
  2. 域控制器千万别忽视DNS设置
  3. 主域控制器两种故障恢复的处理方式
  4. 故障排除:服务器无法成为辅助域控制器
  5. 主域控制器重装系统后如何恢复活动目录帐号?
责任编辑:韩亚珊 来源: 互联网
相关推荐

2010-09-02 15:18:42

CSSASP.NET

2009-01-12 11:16:58

控制器控制器行为行为结果

2011-07-14 10:28:54

额外域控制器

2011-07-14 08:49:16

域控制器

2009-07-24 11:24:33

ASP.NET中文乱码

2011-07-12 09:29:10

主域控制器备份域控制器

2011-08-08 10:46:15

ASP.NET MVC

2009-07-22 17:37:06

ASP.NET Ses

2012-01-11 10:55:02

ASP.NET MVC

2009-07-22 11:00:30

ASP.NET MVC

2012-02-03 09:06:53

ASP.NET MVC

2009-07-23 16:53:17

ASP.NET中文变问

2011-06-10 10:23:04

活动目录域控制器

2011-07-14 09:45:07

额外域控制器

2011-07-13 10:29:44

域控制器

2011-07-18 13:55:08

2011-07-07 15:01:02

2011-07-12 09:58:42

主域控制器备份域控制器

2022-02-10 16:43:35

汽车智能芯片

2011-07-07 17:15:52

点赞
收藏

51CTO技术栈公众号