本地使用IIS测试ASP脚本网页,结果发现提示[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.],然后测试HTML页面也是如此。
网上查找资料,基本的解决思路就是:
1.打开计算机->管理->计算机管理->系统工具->本地用户和组,给"IUSR_机器名"和"IWAM_机器名"两个用户设置密码设置为同一个密码;
2.开始->运行->cmd,打开命令提示窗口
输入 cd C:\Inetpub\AdminScripts (C是你的系统盘符);
输入 cscript.exe adsutil.vbs set w3svc/wamuserpass 同上密码
输入 cscript.exe adsutil.vbs set w3svc/anonymoususerpass 同上密码
3.开始->运行->cmd,打开命令提示窗口
输入 cd C:\Inetpub\AdminScripts
输入 cscript.exe synciwam.vbs -v
4.控制面板->管理工具->组件服务->计算机->我的电脑->COM+应用程序->IIS Out-Of-Process Pooled Applications,右击IIS Out-Of-Process Pooled Applications->属性,切换到IIS Out-Of-Process Pooled Applications属性对话框的"标识"选项卡。"此应用程序在下列账户下运行"选择中"此用户"会被选中,用户名是"IWAM_***"。这些都是缺省的,不必改动。在下面的"密码"和"确认密码"文本框内输入刚才设置的密码,确定退出,然后再次执行第3步。
5.执行第4部时,可能无法展开“计算机”,组件服务窗口会自动关闭。进入【服务】,发现Com+ Event System这个服务没有,Com+ System Application这个服务不能正常启动。进入注册表,查找确认:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\EventSystem项。如果没有的话,新建文档文档,将以下代码片段拷贝进去,并命名为 EventSystem.reg,然后将该文件导入注册表,重启电脑。
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\EventSystem]
"Type"=dword:00000020"Start"=dword:00000003"ErrorControl"=dword:00000001"ImagePath"=hex(2):43,00,3a,00,5c,00,57,00,49,00,4e,00,44,00,4f,00,57,00,53,00,\ 5c,00,73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,73,00,76,00,63,\ 00,68,00,6f,00,73,00,74,00,2e,00,65,00,78,00,65,00,20,00,2d,00,6b,00,20,00,\ 6e,00,65,00,74,00,73,00,76,00,63,00,73,00,00,00"DisplayName"="COM+ Event System""Group"="Network""DependOnService"=hex(7):52,00,50,00,43,00,53,00,53,00,00,00,00,00"DependOnGroup"=hex(7):00,00"ObjectName"="LocalSystem""Description"="支持系统事件通知服务(SENS),此服务为订阅组件对象模型(COM)组件事件提供自动分布功能。如果停止此服务,SENS 将关闭,而且不能提供登录和注销通知。如果禁用此服务,显式依赖此服务的其他服务将无法启动。"
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\EventSystem\Parameters]
"ServiceDll"=hex(2):43,00,3a,00,5c,00,57,00,49,00,4e,00,44,00,4f,00,57,00,53,\ 00,5c,00,73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,65,00,73,00,\ 2e,00,64,00,6c,00,6c,00,00,00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\EventSystem\Security]
"Security"=hex:01,00,14,80,7c,00,00,00,88,00,00,00,14,00,00,00,30,00,00,00,02,\ 00,1c,00,01,00,00,00,02,80,14,00,ff,01,0f,00,01,01,00,00,00,00,00,01,00,00,\ 00,00,02,00,4c,00,03,00,00,00,00,00,14,00,9d,01,02,00,01,01,00,00,00,00,00,\ 05,0b,00,00,00,00,00,18,00,ff,01,0f,00,01,02,00,00,00,00,00,05,20,00,00,00,\ 20,02,00,00,00,00,18,00,8d,00,02,00,01,02,00,00,00,00,00,05,20,00,00,00,23,\ 02,00,00,01,01,00,00,00,00,00,05,12,00,00,00,01,01,00,00,00,00,00,05,12,00,\ 00,00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\EventSystem\Enum]
"0"="Root\\LEGACY_EVENTSYSTEM\\0000""Count"=dword:00000001"NextInstance"=dword:00000001
6.执行第4部时,可能无法展开"COM+应用程序",报错:错误代码8004E00F-COM+无法与Microsoft分布式事物协调程序交谈。这个情况是MS DTC日志文件被误删了,在开始菜单->运行->输入:msdtc -resetlog回车重新创建日志文件即可,再次启动COM+便可展开"COM+应用程序"。
7.执行第4部时,"COM+ 应用程序中"展开后根本找不到IIS Out-Of-Process Pooled Applications的话用以下方式重建IIS Out-Of-Process Pooled Applications:开始菜单->运行->cmd,打开命令提示窗口
输入 cd %windir%/system32/inetsrv 切换到system32下inetsrv目录
输入 rundll32 wamreg.dll, CreateIISPackage 注意:必须准确键入"CreateIISPackage"它区分大小写
输入 regsvr32 asptxn.dll
参考:http://www.king700.com/post/38.html
http://www.cnblogs.com/PBDragon/archive/2010/12/10/1901854.html