如何在域控制器上安装asp.net?

作者:网际浪子专栏(曾用名littlehb)  http://blog.csdn.net/littlehb/

在域控制器或备份域控制器上安装  Microsoft  Visual  Studio  .NET  或  Microsoft  .NET  框架后,如果您尝试运行  ASP.NET  应用程序,则浏览器会显示下面的错误信息: 
 
Server  Application  Unavailable 
 
The  web  application  you  are  attempting  to  access  on  this  web  server  is  currently  unavailable. 
 
Please  hit  the  "Refresh"  button  in  your  web  browser  to  retry  your  request. 
此外,系统应用程序事件日志中会记录以下事件: 
 
aspnet_wp.exe  could  not  be  launched  because  the  username  and/or  password  supplied  in  the  processModel  section  of  the  config  file  are  invalid. 
aspnet_wp.exe  could  not  be  started. 
HRESULT  for  the  failure:80004005   
此问题涉及  Internet  信息服务  (IIS)  5.0  版或更高版本。   
<原因> 
默认情况下,为了提供更安全的环境,ASP.NET  用弱帐户(名为  ASPNET  的本地计算机帐户)运行它的辅助进程。域控制器或备份域控制器上的所有用户帐户都是域帐户,不是本地计算机帐户。因此,Aspnet_wp.exe  由于找不到名为"localmachinename\ASPNET"的本地帐户而未能启动。要在域控制器上提供有效的用户帐户,必须在  Machine.config  文件的  <processModel>  部分指定显式帐户,或者必须使用  SYSTEM  帐户。 
 
备注:如果在尝试浏览页面之前尝试进行调试(单击启动按钮),则会出现完全相同的问题。   
<解决方案> 
若要解决此问题,请使用下列方法之一: 
创建具有正确权限的弱帐户,然后配置  Machine.config  文件的  <processModel>  部分使用该帐户。 
在  Machine.config  文件的  <processModel>  部分,将  userName  属性设为  SYSTEM。 
配置  Machine.config  文件的  <processModel>  部分使用管理员帐户。   
备注:如果允许  ASP.NET  应用程序作为  SYSTEM  或管理员帐户运行,将带来严重的安全问题。如果使用其中的任一种变通解决办法,在  Aspnet_wp.exe  进程中运行的代码将能够访问域控制器和域设置。从  Aspnet_wp.exe  进程启动的可执行文件在相同的上下文中运行,它们也能够访问域控制器。 
 
因此,Microsoft  建议使用第一种变通解决办法。要使用第一种变通解决办法,请执行以下步骤: 
1、在计算机上创建名为  ASPUSER  的用户帐户,然后将此帐户添加到"用户组"中。 
 
备注:如果更改了  .NET  框架创建的  ASPNET  帐户的密码,也可以使用该帐户。您必须知道此帐户的密码,因为需要在后面的步骤中将该密码添加到  <processModel>  部分。 
2、向  ASPUSER  或  ASPNET  帐户授予"作为批处理作业登录"的用户权限。确保此更改在"本地安全策略"设置中显示。 
 
备注:要向此帐户授予"作为批处理作业登录"的用户权限,必须在以下每一个安全策略中授权此用户权限(从"控制面板"/"管理工具"开始操作): 
 
 
域控制器安全策略 
域安全策略 
本地安全策略 
 
备注:您必须重新启动服务器,以使这些更改生效。 
3、确保  ASPUSER  或  ASPNET  帐户具有的权限能够访问启动  Aspnet_wp.exe  进程和为  ASP.NET  页提供服务所必需的全部目录和文件。 
 
4、打开  Machine.config  文件。该文件的路径是:%Systemroot%\Microsoft.NET\Framework\v1.0.3705\CONFIG. 
5、在  Machine.config  文件的  <processModel>  部分,将  userName  和  password  属性更改为第  1  步创建的帐户的名称和密码。例如:  userName="DomainName\ASPUSER"  password="ASPUSERpassword" 
6、保存对  Machine.config  文件所做的更改。

你可能感兴趣的:(.net,应用服务器,浏览器,asp.net,asp)