.如果WEB站点目录下有Global.asa文件,改此文件文件名为Global.old. 重启WEB服务,在记事本中写如下代码(原文中无代码, 实际最简单的那种asp源码就行,译者注).文件另存为Test.asp于WEB根目录下. 如果asp文件能正常执行,问题就出在Global.asa上, 如果依然不行,请转到第二步. 参阅如下微软知识库有关Global.asa文件出错的更多信息. Q288245 PRB: Global.asa Does Not Fire from Personal Web Server on Windows 98 Q265275 FP2000: Global.asa Does Not Run in FrontPage Web Q173742 FIX: Global.asa Is Not Executed If Restricting Web Access 2.将web站点的应用程序保护级别设置为"低",重启IISAdmin服务. 如果asp文件如此能正常执行,说明问题出在IWAM用户上, 请跳到第三步继续. 如果没有正常执行,请在管理工具中检查组件服务确保能看到IIS Packages, 确保组件服务没有失败后,确认本地用户组中有如下用户存在: NT AUTHORITY/Authenticated Users NT AUTHORITY/INTERACTIVE 关于更多组件服务出错的信息,请参考入下知识文章: Q301919 PRB: Cannot Expand 'My Computer' in Component Services MMC Snap-In 3.如果通过第二步asp文件能正常执行,将站点的应用程序保护级别设回"中"或"高",将IWAM用户添加到本地管理员用户组中,如果通过这步,asp文件能正常执行,说明IWAM用户的访问许可权限就存在问题,请跳到第四步,如果asp文件还没正常执行,请在命令提示符中执行Synciwam.vbs 工具. 方法:打开命令提示符窗口敲入如下命令: C:/Inetpub/adminscripts>cscript synciwam.vbs . 关于IWAM用户(设置不正确)导致asp文件不能正常执行,请参考入下知识库. Q308622 HOW TO: Perform Administration Tasks in IIS from a Command Prompt Q297989 PRB: Configured Identity Is Incorrect for IWAM Account Q255770 PRB: Logon Failure: Unknown User Name or Bad Password When You Run Out-of-Process Webs Q236007 Domain Controller Demotion Causes Out-of-Process Applications to Fail 4.解决IWAM用户许可权限的问题,请使用windows 2000的第三方产品:Regmon 和 Filemon.请在 http://www.sysinternals.com 中下载这些工具. 当你执行asp页面请求时运行这些工具, Dllhost.exe 进程在Regmon 中查找"ACCDENIED" (在Filemon中查找"FAILURE"). 注意 :在IE进程出现"操作失败"时不要紧张,这只是普通现象.~~ 关于IIS功能正常运作所需的最小条件,请参阅知识库: Q271071 Minimum NTFS Permissions Required for IIS 5.0 to Work 在看到Dllhost.exe 进程"操作失败"的错误信息后,用Regedit32工具修改注册表里任何必须的NTFS许可权限(好像是病句,,汗...) 5.在装完IIS5.0后,从WEB 服务器控制台或其他网络上的工作站浏览asp或html文件,WEB服务可能返回如下错误信息: HTTP 500 内部服务器错误. 默认的web服务可能处于运行状态,如果运行 netstat -an 你可能注意到WEB服务器正监听TCP80端口,即HTTP的默认端口. 注意: 如果在使用IE5.0(或以上版本,译者注),你可能屏蔽了IE高级选项中的显示友好HTTP错误信息选项,更多信息:请参考微软知识库: Q218155 Description of Hypertext Transport Protocol Error Messages 下面的几条可能出现在装有IIS5.0机器的事件日志中: Application Log: COM+ error with Event ID 4099 System Log: W3SVC error with Event ID 59 System Log: W3SVC warning with Event ID 36. Iis5.log 文件(WINNT目录下)可能包含下面错误信息: 0x8004e00f=COM+ was unable to talk to the Microsoft Distributed Transaction Coordinator 你正试图打开com+管理者使用的组件服务,MMC停止响应. 原因 IIS5.0依赖与COM+,COM+依赖于Distributed Transaction Coordinator (DTC) 服务运行,DTC检查版本的机制(包括在windows 2000以前的SQL SERVER版本)不能识别Windows2000所用的版本属性,结果SQL SERVER的DTC安装程序移除了WINDOWS 2000安装的DTC服务,更多请查阅微软知识库: Q249310 BUG: Installing SQL Server on Windows 2000 Uninstalls DTC Service 解决 如下步骤解决这个问题: a.验证Dtcsetup.exe (默认在c:/Winnt/System32 下)是否为1999.9.3422.24 或以后版本号 b.运行Dtcsetup.exe 安装DTC服务 c.开始DTC服务 ( msdtc -resetlog 然后就可以启动服务了。 ) d.控制面板中,双击"添加删除程序" e.选"添加删除Windows组件",移除IIS5.0再重新安装. 现状 微软已经确认在SQL Server versions 6.5 和 7.0 and MSDE 1.0中这会是个问题 详细请参见文章: http://support.microsoft.com/default.aspx?scid=kb;en-us;Q257267 6.最后一招:依照下面步骤自己创建IIS Packages a.浏览组件服务删除下列包 a.IIS In-Process Applications b.IIS Out-of-Process Pooled Applications c.IIS Utilities b.打开命令提示符,转到文件夹%windir%/system32/inetsrv,执行命令: rundll32 wamreg.dll, CreateIISPackage 注意: CreateIISPackage是大小写敏感的,确人输入正确. c.重新打开组件服务,你将看到IIS COM+应用已经重新创建了. d.从命令提示符中运行IISRESTART再测试之前没有正确执行的任何asp文件. |