日期:2008-07-21  浏览次数:20948 次

Aiyiweb.Com提示:彻底处理XP下IIS无法解释动态页的问题,又在网上搜索之,终于于今日处理,下面将流程写于下,以供来人方便.

前面有一篇ASP教程引见了asp文件打不开的缘由以问答方式为大家提供了处理方案。但是当我们在IIS下由于系统升级等缘由,可能会形成我们设置的动态网页程序不能正常运转,今天给大家讲解下IIS下正常执行ASP和PHP程序的方法。

前言:

  IIS(XP下)突然出了问题(未作过任何设置,只是升级过):无法解释ASP/PHP,对于一个网站设计人员来说,这就象吃饭没有筷子一样不爽。后来试过多种处理方案均无效,算了,等不及,还是用APACHE了,但用起来总是感觉怪怪的;后来又在虚拟机中装了2K Server 来运转IIS,但这样总是太麻烦,遂决定彻底处理XP下IIS无法解释动态页的问题,又在网上搜索之,终于于今日处理,下面将流程写于下,以供来人方便:

出错缘由:

     XP下IIS无法解释ASP等动态页次要是由微软的一个BUG形成的。由于系统缘由使IWAM帐号的密码错误,致使出现IIS500内部错误。

IWAM 帐号简介:

     IWAM 账号是安装 IIS5 时系统自动建立的一个内置账号,次要用于启动进程之外的使用程序的Internet信息服务。IWAM账号的名字会依据每台计算机 NETBIOS 名字的不同而有所不同,通用的格式是IWAM_MACHINENAME,即由“IWAM”前缀、连接线“_”加上计算机的NETBIOS名字组成。我的计算机的NETBIOS名字是JALLEN,因此我的计算机上IWAM账号的名字就是IWAM_JALLEN,这一点与IIS匿名账号ISUR_MACHINENAME的命名方式非常类似。

IIS 500错误最终缘由:

     IWAM账号建立后被Active Directory、IIS metabase数据库和COM+使用程序三方共同使用,账号密码被三方分别保存,并由操作系统担任这三方保存的IWAM密码的同步任务。按常理说,由操作系统担任的任务我们大可放心,不必担心出错,但不知是BUG还是其它什么缘由,系统的对IWAM账号的密码同步任务有时会失败,使三方IWAM账号所用密码不统一。当IIS或COM+使用程序使用错误IWAM的密码登录系统,启动IIS Out-Of-Process Pooled Applications时,系统会因密码错误而拒绝这一请求,导致IIS Out-Of-Process Pooled Applications启动失败,也就是我们在ID10004错误事件中看到的“不能运转服务器{3D14228D-FBE1-11D0-995D-00C04FD919C1} ”(这里{3D14228D-FBE1-11D0-995D-00C04FD919C1} 是IIS Out-Of-Process Pooled Applications的KEY),不能转入IIS5使用程序,HTTP 500内部错误就这样产生了。
处理方法:

     知道了导致HTTP 500内部错误的缘由,处理起来就比较简单了,那就是人工同步IWAM账号在Active Directory、IIS metabase数据库和COM+使用程序中的密码。