受ASP动态网页的吸引,笔者决定用Dreamweaver做一个ASP格式的学校主页。然而,当笔者将Web服务器中Htm格式的网页换成新做的ASP网页时却发现:新做的这些ASP网页在校园网内的所有计算机上均不能浏览(学校利用Windows 2000 Server的IIS发布Web页)。
ASP是一个服务器端的脚本环境,即当脚本运行在服务器上(注意不是客户机)时,Web服务器完成所有的工作。也就是说,程序员不必担心浏览器是否能处理ASP页面,因为Web服务器会代替浏览器完成页面的转化工作。由于Web服务器是通过Windows 2000 Server中的IIS来实现的,因此,笔者首先将排查的重点放在了IIS的站点设置上。进入“控制面板→管理工具→Internet 服务管理器”,选中“默认Web站点”,然后点击右键选择“属性”,在“属性”设置框中查找与ASP有关的设置项。在“文档”设置栏里,将主页文件Index.asp添加为默认文档;在“主目录”的“应用程序设置”栏中,点击[配置]按钮后,在“应用程序映射”框中发现与ASP有关的应用程序映射已经添加(见附图),但在“应用程序调试”框中,发现“启用ASP服务器端脚本调试”和“启用ASP客户端脚本调试”未选中,于是将其选上。
应用程序调试对话框
完成以上设置后,退出默认Web站点属性设置框。在浏览器中浏览学校主页,故障依旧。看来问题不在IIS设置上,还会是什么原因呢?笔者突然想起Windows 2000 Server有事件日志的功能,不如看看它有没有记载。鼠标右键点击“我的电脑”,选择“管理”,在“系统工具”中,点击“事件查看器”,在“应用程序”项中,发现有一个出错提示,双击它,内容显示为“IISADMIN 服务发现账户IWAM_MYSEVER无效。一些IIS功能可能因此而失败”。难道IWAM_MYSEVER账号与此有关?当初为了服务器的安全,笔者将系统默认的许多账号都禁用了,其中就包括IWAM_MYSEVER账号。于是笔者又进入“计算机管理→本地用户和组”,点击“用户”文件夹,双击IWAM_MYSEVER账号,将“账号已停用”取消。完成后浏览学校主页,ASP网页终于重见天日了!
那么,IWAM_MYSEVER账号究竟是什么东东,居然会使Windows2000的IIS不认ASP网页!原来,IWAM账号是安装IIS时系统自动建立的一个内置账号,主要用于启动进程之外的应用程序的Internet信息服务。IWAM账号的名字会根据每台计算机netbios名字的不同而有所不同,通用的格式是IWAM_Machine,即由“IWAM”前缀、连接线“_”加上计算机的netbios名字组成。笔者计算机的netbios名字是MYSEVER,因此我的计算机上IWAM账号的名字就是IWAM_MYSEVER,这一点与IIS匿名账号ISUR_MACHINE的命名方式非常相似。