VPS技术
当前位置 :主页 > VPS技术 >

iis问法访问asp文件的解决办法

来源:互联网 时间:2014-03-24
iis无法打开asp文件解决方法

每每装IIS,总会碰到这样那样的问题,从目前反应情况来看,IIS安装后可浏览HTML静态文件,却无法浏
览asp为后缀的动态页面。
通过几次调试后,找到以下几种方法,这些方法都参考网络各个介绍,并通过了本人的测试。希望能给大家
减少IIS安装故障带来的烦恼。
一般来说,对于此故障通常都发生在这么一种情况,即windows xp ghost版本。很容易理解,ghost制作方
通常为了给系统减肥,把普通用户不需要的服务给停止了,结果导致当我们需要使用一些不常用的服务时,
却怎么也不能正常。所以,对大多数初学者来说,如果你想使用IIS,那么你使用安装版的操作系统比较方
便。
对于asp文件无法打开,html却能正常浏览(请注意此特征,不要与其他错误混淆),你可以考虑以下两种
情况。
1. 迅雷惹的祸。
如果迅雷打开了,IIS就会失效。因为迅雷会占用系统80端口,而IIS的默认端口就是80,所以,有人当着你家门口,你当然进不去了,事情好办,把迅雷退出就OK了嘛。
2. windows漏洞补丁所致。
首先,你检查下是否安装了KB939373补丁,更新文件WindowsXP-KB939373-x86-CHS.exe补丁会导致asp文件无法正常运行的。解决方法,开始——控制面板——添加删除程序 把显示更新选上,然后找到KB939373,卸载即可。
KB939373,用于防止攻击者可能会远程利用此问题危及使用 Internet 信息服务 (IIS) 的 Windows 系统的安全并获取对该系统的控制权的防范,但这补丁好像本身就有问题。
3. COM+应用程序错误,这个其实我也没去弄清楚,因为我也是按照别人的方法按步排除出来的。下面是别人的步骤,我借用一下。
-------------------------------------------------------------------------------
IIS服务器出现错误的原因很多,请尝试以下操作:
1、查看网站属性——文档
看看启用默认文档中是否存在:index.asp index.htm index.html (最好全都有,没有可添加)
2、查看网站属性——主目录
A、本地路径是否指定正确
B、是否勾选“脚本资源访问”?
C、是否勾选“读取”?
D、执行权限:纯脚本
3、查看网站属性——目录安全性——编辑
A、是否勾选“匿名访问”?
B、用户名:IUSR_您的计算机名(不对,就点浏览选择)
C、密码不用改,勾选“允许IIS控制密码”就可以了
D、其它不用选
4、查看网站属性——网站
A、IP地址:全部未分配 或者 选择一个
B、TCP端口:80 (最好不要改,改了访问方法就不一,特别提醒:有些软件会占用80端口,端口被占就启动不了IIS,例如:讯雷)
5、打开控制面板——管理工具——计算机管理——本地用户和组——用户
A、看看“IUSR_您的计算机名”此用户有没有启动,必须启动(说明:有红色的×表示没有启动)
B、看看“IWAM_您的计算机名”此用户有没有启动,必须启动(说明:有红色的×表示没有启动)
C、在“IWAM_您的计算机名”该用户上按右键——设置密码(密码要记住,后面还需要用上该密码)
6、打开控制面板——管理工具——组件服务——组件服务——计算机——我的电脑——COM+应用程序
A、在“IIS Out-Of-Process Pooled Applications”上按右键选择‘属性’——选择‘标识’,指定用户:IWAM_您计算机名(说明:可以点浏览查找);输入密码,密码上面步骤的密码。再次启动该服务,启动后它会动。
B、在“IIS In-Process Applications”上按右键选择‘属性’——选择‘安全性’,将‘启用身份验证’勾去掉
C、在“IIS Utilities”上按右键选择‘属性’——选择‘安全性’,将‘启用身份验证’勾去掉。
特别提醒:有些朋友的组件无法启动,可能是您优化了XP服务,也可能是病毒导致,也可能是组件出差……这些就只能靠您处理了
7、请检查“控制面板——管理工具——数据源 (ODBC)”,看看系统DSN 有没有Access数据库驱动,如果是空白的话,请添加一个。
8、如果经过上面设置还不行话的,请注册以下组件,分别把它复制到运行中:
A、regsvr32 %windir%\system32\VBscript.dll
B、regsvr32 %windir%\system32\JScript.dll
C、regsvr32 %windir%\system32\Inetsrv\Asp.dll
最后,就是测试了……(如果还不行,建议您重装IIS,重作以上操作)
祝您成功!
-------------------------------------------------------------------------------
我只做到第6步,结果发现我的COM+应用程序无法打开,我想问题大概就在这里了,随后我又找到解决COM+应用程序无法打开的办法。
这个问题也是IIS常遇到的,就是打开COM+时有时会显示 “错误代码8004E00F-COM+无法与Microsoft分布式事物协调程序交谈”
原因及解决方法MS DTC 日志被误删除了。
使用msdtc -resetlog 命令创建日志文件。
这时,COM+应用程序正常了,嘿嘿。
此处有一个说明,上面的步骤中的第6条,我并没有找到相对应的a,b,c所说的选项,所以我在后面把IIS重新装了一遍(因为我按照上面的说明把密码改了,无法与后面的配套,只得重装)。结果,IIS正常了,哈哈,想想此前重装好几遍都没用,应该是这里的问题了。
以上三个情况是我做asp以来碰到的并成功解决的例子,虽无法做深入研究,但应该够大家提供参考的。



COM+ 应用程序中"找不到此项,可以通过下述方法重建:
打开命令提示窗口,然后使用以下命令切换目录:
cd %windir%/system32/inetsrv
c. 运行以下命令:
rundll32 wamreg.dll, CreateIISPackage
注意:必须准确键入"CreateIISPackage";它区分大小写。
regsvr32 asptxn.dll
d. 关闭并重新打开"组件服务"。您应看到已经重新创建的所有这三个 IIS COM+ 应用程序。
e. 从命令行运行 IISRESET,并对先前未正确加载的任意 ASP 页进行测试。


.查看系统日志文件:
“DCOM 遇到错误“重叠 I/O 操作在进行中。 ”并且无法登录到 .\IWAM_CCNU-8A760083A4 上以运行服务器:
{3D14228D-FBE1-11D0-995D-00C04FD919C1} ”
10.搜索了一下错误码,知道是COM+应用程序出错误了,用别人所给的方法还是解决不了,根本没有办法来密码同步,也没有办法启动这个服务。把“标识”中的“此用户”从一般的用户调整到管理员,还是启动不了服务。
11.最后自己试了一下,一下搞定了。“开始”->“设置”->“控制面板”->“管理工具”->“组件服务”中,“控制台根目录”->“组件服务”->“计算机”->“我的电脑”->“COM+应用程序”中,有一个“IIS Out-Of-Process Pooled”鼠标右键“属性”--“标识”--把“此用户”调整为“交互式用户--目前已登录的用户”。然后“确定”,再鼠标右键“属性”--“启动”。
终于OK了,过程真是复杂……。今天太不走运了,就这么一个问题,搞了我大半天

IIS出现HTTP500内部错误以及COM+8004e00f错误的解决办法(MSDTC)
主要都是IWAM账号在ActiveDirectory、IIS metabase数据库和COM+应用程序三处的密码无法同步,解决方法也很简单,大致有一下三个步骤:
1、重新设置IIS的IWAM账号密码。[在计算机管理中的用户管理里]
2、同步IIS metabase中IWAM_MYSERVER的密码,在CMD中:c:\inetpub\adminscripts>adsutil set w3svc/wamuserpass "yourpassword"
3、同步COM+应用程序所用的IWAM_MYSERVER密码,在CMD中:c:\inetpub\adminscripts>cscript synciwam.vbs -v,但是在进行第三步操作时总是报8004e00f错误。
后来在系统里不断的乱看,发现MSDTC服务不正常,于是先从这里下手,具体的解决方法如下:
1、首先进入组件服务,查看组件服务/计算机/我的电脑/COM+应用程序,结果报错"COM+ 无法与 Microsoft 分布式事务协调程序交谈",无法查看里面的对象。
2、进入事件查看器,发现msdtc服务没有正常启动。
3、删除注册表中的键:
? HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MSDTC
? HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSDTC
? HKEY_CLASSES_ROOT\CID
4、停止MSDTC服务:net stop msdtc
5、卸载MSDTC服务:msdtc -uninstall
6、重新安装MSDTC服务:msdtc -install
7、确认在事件查看器中msdtc服务已经正常启动[这步很关键,如果没有,重新启动下电脑看看,然后再同步密码(就是开始的那三步)
其实"COM+ 无法与 Microsoft 分布式事务协调程序交谈"在安装了Windows组件中的消息队列后,就不会出现这个错误了,同时"消息队列"组件又对服务中的"Distributed Transaction Coordinator"(即msdtc服务)有依存关系,这个服务必须启用,才可以安装消息队列组件!消息队列装好后,上图中的COM+应用程序菜单就可以打开了,表示其已正常工作!如果在这个时候再装IIS或者把IIS卸载重装,就不需要上面的手动密码同步问题了!就是说按这个步骤安装好IIS,就已经正常了!实际上,手工同步密码

iis无法加载程序解决方案
C:\Documents and Settings\用户名>cd %windir%\system32\inetsrv
C:\WINDOWS\system32\inetsrv>rundll32 wamreg.dll, CreateIISPackage
C:\WINDOWS\system32\inetsrv>regsvr32 asptxn.dll
解决办法:
设置Internet信息服务(IIS)管理器中的应用程序池,更改网站的程序池属性
调整后即可解决问题。
其实只要很简单的几步。:
开始。。。运行。。。regsvr32 jscript.dll
开始。。。运行。。。regsvr32 vbscript.dll
开始。。。运行。。。iisreset
将windows或winnt下的temp文件夹给上users的写入权限!
搞定收工!



IIS ASP 无效的默认脚本语言 解决方法2008-02-26 17:02Active Server Pages 错误 'ASP 0201'
无效的默认脚本语言
为此应用程序指定的默认脚本语言无效。
于是开始百度、谷歌,同样是找遍了,所谓的“解决办法”倒是很多,比如以下这些:
一、删除IIS,删除c:\Inetpub文件夹,重装IIS。(试过了,没有用,而且是试过N次)
二、设置默认的ASP脚本语言为:VBScript  (这个简直是废话,我根本就没动过这个设置,ASP默认的就是这个,还用得着我去重新设置?)
三、office2003 与IIS冲突,要我卸载掉access  (晕死,这个我自认是完全与IIS不搭边的,所以我自然不去试了,后来我解决了IIS的这个错误就说明确实不是OFFICE的错)
四、安全卫士360惹的祸,瑞星惹的祸等等,呵呵,360,瑞星我都没用过,我用的江民。同样我也坚信不可能是江民的错。
五、IIS里-主目录选项卡-应用程序,点旁边的“删除”按钮,然后再点“创建”按钮,创建新的应用程序。有个网友在他的BLOG里说他用这种方法解决的,于是我试了,结果还是没有用。也许这位网友可能真的解决了,但却对我的系统无效。
六、重新注册vbscript.dll,jscript.dll,asp.dll,有很多的网页里,都是转的这个贴子,我照着试过了,同样还是没有用。
七、IUSR_计算机名,说是这个帐户的权限不够,说要把IIS相关的文件夹和文件都设置一下让这个帐户有权限。这个说的有点道理。我认为应该是正确的,于是就围着这个转,但是却总是做不对(同时也很疑惑,家里的电脑用了那么久了,根本就没说过要这样进行设置,在以前的公司上班时,也都没说过要这样设置的)。
反正网上写的方法太多了,有的我试过了,有的我认为根本就没道理就没试。但总的来说,我认为问题就是出在权限这里,至于为什么家里的电脑是同样的系统盘安装的,同样的设置,为什么家里的不出问题,偏偏公司的就问题一把,难不成IIS还挑硬件配置不成?
最后终于解决了,方法如下:
在IIS里,选择“默认站点”右击属性弹出对话框,选择“目录安全性”选项卡,在“身份验证和访问控制”里,点“编辑按钮”,确认“启用匿名访问”打了勾,确认“集成windows身份验证”打了勾,再接着,在“匿名访问”那里,用户名选择你当前登陆的这个用户名(最好是管理员权限,因为我就是用的管理员权限的帐号登陆的),密码输入你登陆的用户的密码,一路确定应用。
在浏览器里再测试<% response.write now() %>,呵呵,终于正常了。。。
这个方法应该来说,是一个有效的通用的方法,出现这个错误的兄弟姐妹们可以试试。但是,这个方法绝对不是一个根本的方法,同时这个方法还是一个危险的方法,因为这里用的是管理员帐号,如果仅仅是自己的机子用还好,但如果是用在WEB服务器上,那就等于把服务器白送给别人了,所以如果是服务器出这个错误,还是乖一点,重装系统吧(有GHOST这个东东,恢复系统只要2分钟,相信你不会懒到这个程度吧?)
问题是解决了,但是不是根本的解决,先将就着用,还是要继续寻找根本的解决办法。
2007年1月6日补充内容:
  今天上午开了一上午会,散会后,瞎逛就到了腾讯“搜搜”上,然后想看看自己的站在腾讯上能查到多少,结果是出来了,其中有一个是以前在其他搜索引擎上没见过的,打开来看了看,哈。。。没想到,居然让我找到个工具能修复IIS的这个201错误的。。。(这个工具是出自360安全卫士论坛的一位网友)
  我刚试过了,用这个工具修复后,我新建一个IIS站点,做了个测试ASP,浏览正常了!(在用这个工具修复IIS时,会小卡一会,所以不要以为是死掉了,过一会儿会提示“修复成功”这样的对话框。)
  另外再说明一下,这个工具在我的系统上是修复成功了,但到其他人的系统上是否也一样会修复成功,这个我就不知道了。