一、发生缘由:
由用户方面报告故障,说是该站点上所有的ASP页面均不能访问。
本地运行asp文件,IE提示:
HTTP 500 - 内部服务器错误
Server Application Error
The server has encountered an error while loading an application during the processing of your request. Please refer to the event log for more detail information. Please contact the server administrator for assistance.
查看日志文件:
系统日志具体描述如下:
DCOM 错误 无 10010 NT AUTHORITY\SYSTEM Myserver 服务器 {3D14228D-FBE1-11D0-995D-00C04FD919C1} 没有在限定的时间内用 DCOM 注册。
二、原因分析
曾经删除过SA,SAM文件是保存用户密码的数据库文件,删除后,所有的用户信息就会丢失,而相应的组信息也会随之丢失,虽然重新登录过系统,系统已经重新建立了SAM文件,也重新安装了IIS,IWAM帐号也已经重新建立,但是,原用户组中的特殊信息却没有被恢复。
检查“开始”->“设置”->“控制面板”->“管理工具”->“组件服务”中,“控制台根目录”->“组件服 务”->“计算机”->“我的电脑”->“COM+应用程序”中,有一个IIS Out-Of-Process Pooled Applications该应用程序的ID号即为{3D14228D-FBE1-11D0-995D-00C04FD919C1},很多系统报错找不到应 用程序{3D14228D-FBE1-11D0-995D-00C04FD919C1}之类的错误,就是因为该应用程序未能启动,打开该应用程序的属性, 检查标识却为IWAM用户,右键启动,报错。把IWAM加入本地Users组中,也可正常启动。确定是因为IWAM用户无权访问该应用程序所致。
三、解决办法
1、修改IWAM_Myserver帐号密码,在“开始”->“设置”->“控制面板”->“管理工具”->“计算机 管理”中,“系统工具”->“本地用户和组”->“用户”里面,一个IWAM_Myserver(Myserver为本地计算机名)的帐号 内,右键更改密码,更改为一个自定义的密码即可,假设为“1234”;
2、修改IIS内部IWAM_Myserver帐号密码,在c:\inetpub\adminscripts\目录下(IIS安装默认目录), 输入:c:\inetpub\adminscripts>adsutil.vbs set w3svc/wamuserpass "1234" .修改成功后,系统有如下提示wamuserpass: (string) "******"
3、在“开始”->“设置”->“控制面板”->“管理工具”->“计算机管理”中,“系统工具”->“本地用 户和组”->“用户”里面,确认IWAM_My server用户只在GUEST组内,再在“本地用户和组”->“组”里面,右键点击Users组属性,添加进NT AUTHORITY\Authenticated Users和NT AUTHORITY\Interactive两个用户成员,确定。
4、在IIS安装默认目录下输入:c:\inetpub\adminscripts>synciwam.vbs -v
将COM+程序的用户改回为IWAM用户,重新启动IIS Out-Of-Process Pooled Applications应用程序,没有再报错了,再重启IIS,检查所有WEB站点服务,故障现象解除!
至此,故障现象全部排除!
通过此次故障的排查,得出几点需要注意的:
1、事件日志的空间设置稍微放大一些,默认才512K,根据硬盘空间,适当放大一些,避免出现日志文件已满的情况;
2、不要随便轻易清空事件日志中的事件记录,很多故障现象需要从这个里面下手找原因;
3、所有返回的系统提示信息一定要注意仔细查看;
4、IIS中的应用程序保护应为中或高,如为低,则所有ASP页面均以本地系统权限运行,安全性存在问题。
5、COM+程序的用户权限和用户启动权限很重要,应注意检查。
6、系统默认组有时有重要作用,不能轻易删除或修改。
7、系统重要文件(如SAM)不可轻易删除,应尽可能采取妥善的解决方法。如使用外部程序修改注册表或SAM表信息以获得管理员权限。而不要删除该文件。
“七”乐无穷,尽在新浪新版博客,快来体验啊~~~请点击进入~