找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 3692|回复: 0

IIS 500内部错误之解决办法

[复制链接]
发表于 2006-10-1 11:22:04 | 显示全部楼层 |阅读模式
<strong><br /><br /></strong><p>错误表现:<br />这个错误发生时总会有三方面的表现:一是IE中的最直接的表现,也是最让人看不懂的表现;二是安全日志中的表现,IWAM_Machine账号登录失败;三是系统日志中的表现,IIS Out-Of-Process Pooled Applications应用程序因启动账号的错误而不能够启动&#46;从而造成ASP页面浏览错误&#46;</p><p>(一)IE中的表现</p><p>当浏览以前能够正常运行的asp页面时会出现如下的错误:</p><p>(1)<br />网页无法显示 <br />您要访问的网页存在问题,因此无法显示。 </p><p>---------------------------------------------</p><p>请尝试下列操作:</p><p>打开 http://127&#46;0&#46;0&#46;1 主页,寻找指向所需信息的链接。 <br />单击刷新按钮,或者以后重试。</p><p>HTTP 500 - 内部服务器错误<br />Internet 信息服务</p><p>--------------------------------------------------------------------------------</p><p>技术信息(支持个人)</p><p>详细信息:<br />Microsoft 支持 </p><p>[注意,这儿只是500错误,不是500&#46;xx等错误的,那些错误主要是asp编程问题,与iis没有太大的关系,只有500错误是由iis自身造成的]</p><p>(2)<br />Server Application Error<br />The server has encountered an error while loading an application during the processing of your request&#46; Please refer to the event log for more detail information&#46; Please contact the server administrator for assistance&#46;</p><p><br />在注册表中的表现<br />提示:sam文件里的IWAM_user 不存在</p><p> </p><p>网络上的解决方案如下:<br />知道了导致http 500内部错误的原因,解决起来就比较简单了,那就是人工同步iwam账号在active directory、iis <br />metabase数据库和com+应用程序中的密码。 <br />具体操作分三步,均需要以管理员身份登录计算机以提供足够的操作权限(iwam账号以iwam_myserver为例)。 </p><p>(一)更改active directory中iwam_myserver账号的密码 <br />因iwam账号的密码由系统控制,随机产生,我们并不知道是什么,为完成下面两步的密码同步工作,我们必须将iwam账号的密码设置为一个我们知道的值。 </p><p>1、选择“开始”-&gt;“程序”-&gt;“管理工具”-&gt;active directory用户和计算机,启动“active <br />directory用户和计算机”管理单元。 <br />2、单击“user”,选中右面的“iwam_myserver”,右击选择“重设密码(t)&#46;&#46;&#46;”,在跳出的重设密码对方框中给iwam_myserver设置新的密码,这儿我们设置成“aboutnt2001”(没有引号的),确定,等待密码修改成功。 </p><p><br />(二)同步iis metabase中iwam_myserver账号的密码 <br />可能因为这项改动太敏感和重要,微软并没有为我们修改iis <br />metabase中iwam_myserver账号密码提供一个显式的用户接口,只随iis5提供了一个管理脚本adsutil&#46;vbs,这个脚本位于c:inetpubadminscripts子目录下(位置可能会因你安装iis5时设置的不同而有所变动)。 </p><p>adsutil&#46;vbs脚本功能强大,参数非常多且用法复杂,这里只提供使用这个脚本修改iwam_myserver账号密码的方法: <br />adsutil set w3svc/wamuserpass password <br />password参数就是要设置的iwam账号的新的密码。因此我们将iis <br />metabase中iwam_myserver账号的密码修改为“aboutnt2001”的命令就是: <br />c:inetpubadminscripts&gt;adsutil set w3svc/wamuserpass aboutnt2001 <br />修改成功后,系统会有如下提示: <br />wamuserpass: (string) aboutnt2001 </p><p>(三)同步com+应用程序所用的iwam_myserver的密码 <br />同步com+应用程序所用的iwam_myserver的密码,我们有两种方式可以选择:一种是使用组件服务mmc管理单元,另一种是使用iwam账号同步脚本synciwam&#46;vbs。 </p><p><br />1、使用组件服务mmc管理单元 <br />(1)启动组件服务管理单元:选择“开始”-&gt;“运行”-&gt;“mmc”,启动管理控制台,打开“添加/删除管理单元”对话框,将“组件服务”管理单元添加上。 </p><p>(2)找到“组件服务”-&gt;“计算机”-&gt;“我的电脑”-&gt;“com+应用程序”-&gt;“out-of-process pooled <br />applications”,右击“out-of-process pooled applications”-&gt;“属性”。 <br />(3)切换到“out-of-process pooled <br />applications”属性对话框的“标志”选项卡。“此应用程序在下列账户下运行”选择中“此用户”会被选中,用户名是“iwam_myserver”。这些都是缺省的,不必改动。在下面的“密码”和“确认密码”文本框内输入正确的密码“aboutnt2001”,确定退出。 </p><p>(4)系统如果提示“应用程序被一个以上的外部产品创建。你确定要被这些产品支持吗?”时确定即可。 <br />(5)如果我们在iis中将其它一些web的“应用程序保护”设置为“高(独立的)”,那么这个web所使用的com+应用程序的iwam账号密码也需要同步。重复(1)-(4)步,同步其它相应out <br />of process application的iwam账号密码。 </p><p>2、使用iwam账号同步脚本synciwam&#46;vbs <br />实际上微软已经发现iwam账号在密码同步方面存在问题,因此在iis5的管理脚本中单独为iwam账号密码同步编写了一个脚本synciwam&#46;vbs,这个脚本位于c:inetpubadminscripts子目录下(位置可能会因你安装iis5时设置的不同而有所变动)。 </p><p>synciwam&#46;vbs脚本用法比较简单: <br />cscript synciwam&#46;vbs [-v|-h] <br />“-v”参数表示详细显示脚本执行的整个过程(建议使用),“-h”参数用于显示简单的帮助信息。 </p><p>我们要同步iwam_myserver账号在com+应用程序中的密码,只需要执行“cscript synciwam&#46;vbs <br />-v”即可,如下: <br />cscript c:inetpubadminscriptssynciwam&#46;vbs -v <br />microsoft (r) windows script host version 5&#46;6 <br />版权所有(c) microsoft corporation 1996-2000。保留所有权利。 </p><p>wamusername:iwam_myserver <br />wamuserpass:aboutnt2001 <br />iis applications defined: <br />name, appisolated, package id <br />w3svc, 0, 3d14228c-fbe1-11d0-995d-00c04fd919c1} <br />root, 2, <br />iishelp, 2, <br />iisadmin, 2, <br />iissamples, 2, <br />msadc, 2, <br />root, 2, <br />iisadmin, 2, <br />iishelp, 2, <br />root, 2, <br />root, 2, </p><p>out of process applications defined: <br />count: 1 <br />3d14228d-fbe1-11d0-995d-00c04fd919c1} </p><p>updating applications: <br />name: iis out-of-process pooled applications key: <br />3d14228d-fbe1-11d0-995d-00c04fd919c1} </p><p>从上面脚本的执行情况可以看出,使用synciwam&#46;vbs脚本要比使用组件服务的方法更全面和快捷。它首先从iis的metabase数据库找到iwam账号iwam_myserver并取出对应的密码“aboutnt2001”,然后查找所有已定义的iis <br />applications和out of process applications,并逐一同步每一个out of process <br />applications应用程序的iwam账号密码。 <br />使用synciwam&#46;vbs脚本时,要注意一个问题,那就是在你运行synciwam&#46;vbs之前,必须保证iis <br />metabase数据库与active directory中的iwam密码已经一致。因为synciwam&#46;vbs脚本是从iis <br />metabase数据库而不是从active directory取得iwam账号的密码,如果iis <br />metabase中的密码不正确,那synciwam&#46;vbs取得的密码也会不正确,同步操作执行到“updating <br />applications”系统就会报80110414错误,即“找不到应用程序 <br />3d14228d-fbe1-11d0-995d-00c04fd919c1}”。 </p><p>好了,到现在为止,iwam账号在active directory、iis <br />metabase数据库和com+应用程序三处的密码已经同步成功,你的asp程序又可以运行了! </p><p>修改成功后,系统会有如下提示: <br />---------------------------------------------------<br />经过测试,显示应该是<br />wamuserpass: (string) ******* </p><p> </p><p>正确方法:第一,下载IIS5&#46;0安装包,SP4,<br />           第二,备份IIS,卸载掉IIS,然后安装IIS,还原IIS备份,一切OK</p><p> </p><p> </p><p>winwebmail 提示admin密码错误(仅仅对其他用户可登陆有效)</p><p>错误表现:admin无法登陆,提示密码错误,但是申请的信箱可以登陆</p><p>解决办法:和上面一样</p>
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|腾飞在线 ( 冀ICP备05002530号 )

GMT+8, 2026-2-13 16:40 , Processed in 0.051716 second(s), 18 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表