我在使用新 IIS 服务器上的身份池时遇到了问题。
这是我的事件查看器文本:
Event Type: Warning
Event Source: W3SVC
Event Category: None
Event ID: 1021
Date: 6/12/2009
Time: 1:44:50 PM
User: N/A
Computer: <scrubbed>
Description:
The identity of application pool, '<scrubbed>' is invalid. If it remains invalid when the first request for the application pool is processed, the application pool will be disabled. The data field contains the error number.
For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp.
Data:
0000: 69 05 07 80 i..?
Google 建议这与我在“身份”选项卡中设置的应用程序池的用户有关。最常见的问题是:
- 设置错误的密码
- 未将用户添加到 IIS_WPG 组
我试过并重试了这两种方法(并重新启动了 IIS 服务),但似乎都无法解决问题。我还应该寻找什么其他东西。
值得一提的是,身份用户是域用户(而非本地用户)。此设置在另一台(据称完全相同的)服务器/设置上运行良好。
答案1
感谢 MattB,此 Stack Overflow 线程最终让我找到了正确的答案(对我来说)。
我运行了以下命令(从 C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727):
aspnet_regiis.exe -GA domain\username
...其中 domain\username 是我用于应用程序池身份的用户的域限定用户名(采用标准 Windows 格式)。
从 aspnet_regiis 帮助中可以看出,-GA 选项的作用是:
Grant the specified user or group access to the IIS
metabase and other directories used by ASP.NET.
我不知道为什么这不能在这个服务器上自动完成(因为我以前从来没有这样做过)。
答案2
这是一个猜测,但也许您为应用程序池身份配置的域帐户已被锁定?
答案3
尝试授予该帐户“作为服务登录”权限。这里是来自 stack overflow 的一个非常相似的问题。
答案4
如果您使用的是 IIS6,则使用 Metabase Explorer(在资源套件),您可以执行以下操作:
- 浏览到/LM/W3SVC/AppPools/MyAppPool
- 启用“查看/保护数据”
- (如果需要)启用“查看/继承的数据”
现在,查看 WAMUserName 和 WAMUserPass。您可以尝试以该用户身份运行进程:
runas /user:myuser cmd.exe
如果这不起作用,你应该更接近答案了。