在分析问题以前,先尝试访问网站中的纯静态网页(以htm或者html为后缀的页面),如果不能正常显示,说明问题本身不在ASP上。
检查IIS的设置,看是否设置了“应用程序设置-执行权限-纯脚本”,“配置-映射”里有asp扩展名。IIS设置检查无误后,再进行后面的步骤。
1、如果网站本身有Global.asa,先把它更名为Global.old,重新启动该网站。用记事本写下代码并保存为test.asp文件,在浏览器中访问。如果能够正常显示,说明问题出在Global.asa文件上。
以下为引用的内容: <%Response.Write "This is a test ASP page"%> |
2、设置应用程序保护到“低”,重新启动IISadmin线程,如果这时能够在浏览器中读出ASP页面,说明IWAM帐号存在问题。如果仍旧不能访问ASP页面,检查“管理工具”的“组件服务”,确保你能够看到IIS包。
附:如果遇到组件服务打不开(可能是由于应用程序占满CPU造成),在控制面板的添加与删除,重新添加删除组件服务,然后重新启动计算机。
3、将应用程序保护返回到“中”或“高”,添加IWAM帐户到Administrator组,如果这时候ASP页面能够被浏览,说明IWAM存在一个权限问题。如果ASP仍然不能正常显示,进DOS窗口用命令行的方式运行Synciwam.vbs工具。
以下为引用的内容: C:\Inetpubadminscripts>cscript synciwam.vbs |
4、解决IWAM帐号的权限问题,嗯,这个说起来话长,以后单独发表一篇文章。
5、重新建立IIS packages的方法:
在组件服务中删除下列包
IIS In-Process Applications
IIS Out-of-Process Pooled Applications
IIS Utilities
用DOS窗口键入下列命令重新建立包
以下为引用的内容: %windir%\system32\inetsrv rundll32 wamreg.dll, CreateIISPackage |
关掉组件管理器然后重新打开,看到三个新建的包后,重新启动IIS(IISRESET),检测ASP网页是否能够正常浏览。