1、打开IIS7的功能视图 :“ASP-打开功能(右边顶部)-调试属性”里“将详细错误发送到浏览器”后面改为“TRUE”,然后点右边的.“应用”
2、然后在“错误页”设置选项里,双击 500 那一行,再点文件按路径后面的“设置”。在跳出的对话框中将“相对文件路径”里默认的文件名“500.htm”改为“500-100.asp”,确定。
3、在IE浏览器的“Internet选项”中,把“高级”里的“显示友好HTTP错误信息”的小勾勾去掉。
这时候再调试ASP就会出现具体的错误,根据具体的错误提示查找在线帮助文档即可找出对应的解决方法!
比如对于新手常见的错误有 :
详细错误信息显示的是
“Active Server Pages 错误 ‘ASP 0131′
帮助文档查找即可知道错误原因即为“不允许的父路径”, 请按照下列步骤操作启用父路径:
1. 单击 开始,单击 管理工具,然后单击 Internet Information Services 管理器。
2. 在 IIS 控制台中展开 Web 站点运行 OWA (通常这是 默认网站)。
3. 找到包含 ASP Web 应用程序的 Web 文件夹。
4. 用鼠标右键单击 Web 文件夹,然后单击 属性。
5. 在 目录 选项卡上单击 应用程序设置 部分的 配置。
6. 在 应用程序选项 选项卡上单击以选中 启用父路径 复选框。
7. 单击 确定,然后单击 确定,再次以应用所做的更改。
通过 IIS 配置1、打开IIS管理器,或按住 WIN + R 打开命令行输入 inetmgr 打开 IIS 管理
2、左边目录选择目标站点,在右边 IIS 块中双击 “错误页面”
3、在 错误页面”中右边的 “操作”项中选择 “编辑功能设置”
4、在 Error Responses 中,选择 Detailed errors,单机 OK 完成配置。
通过 web.config 配置
其实,上面在两种配置,最终都会反应到对应的 web.config 中。因此,我们可以直接编辑 web.config。特别是对于买的虚拟主机(Shared Web Hosting),没有权限更改IIS。打开网站目录,找到 web.config 文件(如果没有,就建立一个 txt 文件存为 web.config),找到 system.webServer 配置节,添加配置 <httpErrors errorMode="DetailedLocalOnly" />。
注意
此参数选项可以应用到网站或子目录或虚拟目录。
此参数选项对所有 IIS 应用程序有效,包括 ASP, APS.NET, PHP 等。
如果是 ASP.NET 程序,可能还需要配置 <customErrors mode=”Off” />
通过 IIS 配置
1、打开IIS,或按住 WIN + R 打开命令行输入 inetmgr 打开 IIS 管理
2、左边目录选择目标站点,在右边 IIS 块中双击 “ASP”
3、在 ASP 页中展开 "调试属性"节点
4、找到 “将错误发送到浏览器”,选择 true
5、应用即可。
此外,如果是 ASP 程序,还可以配置 sendErrorsToBrowser 选项。
在iis7里面的iis设置要开启启用父路径这个选项,之后就可以了,当然为了调试程序可以打开“ASP设置选项-调试属性”里面的一些调试功能,方便程序的调试。具体可以这样做:一、打开IIS7的功能视图 “ASP设置选项-调试属性”里“将详细错误发送到浏览器”后面改为“TRUE”点右边的“应用”;二、然后在“错误页”设置选项里,双击500那一行,再点文件按路径后面的“设置”。在跳出的对话框中将“相对文件路径”里的文件名改为“500-100.asp”,一路确定。三、把IE7的Internet选项中,高级的那个“显示友好HTTP错误信息”的小勾勾去掉。这时候再调试ASP就会出现具体的错误,对修改很有帮助!我这个显示的是“Active Server Pages 错误 ‘ASP 0131′不允许的父路径/Admin/index.asp,行 1包含文件 ‘../Conn.asp’ 不能用 ‘..’ 表示父目录。”于是又是参照2003里开启父目录的方法设置IIS7,具体如下:打开IIS7的功能视图 “ASP设置选项-行为”里“启用父目录”后面改为“TRUE”再点右边的“应用”。如下图:
通过以上步骤,即可在IIS7中显示错误信息。
IS管理-选中站点-属性-主目录-配置-选项-默认ASP语言),确认默认ASP语言设置为 VBScript(默认)或JScript(如果你更喜欢javascript脚本)
2.注意如果你的代码中首行含有<%Language="language"%>将覆盖上边的设置,所以仔细检查以保证你没有拼写
错误.它应该是<%Language="VBScript"%>
3.有时,脚本引挚不完整的DLL注册也会造成这个问题,请下载最新版的脚本引挚试试.
4.现在,我们需要确认在安装脚本引挚时没有注册某些DLL文件,例如,你可以按以下方式去尝试注册DLL:
regsvr32 %windir%\system32\VBscript.dll
regsvr32 %windir%\system32\JScript.dll
regsvr32 %windir%\system32\Inetsrv\Asp.dll
5.继续,如果你到此还没有解决这个问题,那看起来像是许可权引起了该问题.
例如:使匿名用户访问网站的 iusr_计算机名 这个用户没有相关DLL的读权限,可以尝试将(4)中的DLL文件
给匿名用户赋予读取权限.
6.下一步,如果你还是看到同样的错误,你需要尝试按另外的步骤以确保相关的权限正确.参考以下文件:
IIS 4 - IIS 4所需要的用户和NTFS权限()
IIS 5 - 怎样为IIS5设置所需要的用户及NTFS权限()
IIS 6 - IIS6.0默认的用户及NTFS权限()
7.如果你严格按照上边的步骤来做,应该不会再看到这个错误,除非你在上边的步骤中遗忘了某些配置.你可以
临时将 iusr_计算机名 这个用户加入本地管理员组.注意,这只是为了查找问题,当问题解决后你绝对不能将
匿名用户加入管理员组.
IIS报500错误是在虚拟主机的管理中很平常的一件事情,通常500错误的意思就是没有权限访问。出现500错误的原因有很多.
一般来说,如果程序出错,那么在浏览器内会返回给用户一个友好的错误提示,统一称之为服务器500错误。以下介绍3种办法解决:
途径之一:您必须在http中能够正确的获得错误信息,方法为:请打开浏览器,选择工具,internet选项,高级,在高级中的浏览
项目里面有一个“显示http友好错误提示”的复选框,请取消该复选框,并关掉窗口重新打开IE浏览器,就可获得正确的错误提示,
之后,您就可根据该错误提示检查您具体的出错原因了 。
途径之二:删除系统SAM文件后,IIS报500错。
还有一个通过多次尝试后找到的解决办法:
①在管理工具中修改IWAM_Myserver[Myserver为本地计算机名]的密码假设改成scidc
②然后在CMD中修改IIS内部帐号为刚修改得新密码
在c:\inetpub\adminscripts\目录下输入
cscript.exe adsutil.vbs set w3svc/wamuserpass "scidc"
修改成功后,有如下提示wamuserpass: (string) "******"
③然后在管理工具中的IWAM_My Server用户的属性→用户组中确认处于Guest组内然后在本地用户和组中的组里右击Users组属性,
然后添加成员 Authenticated Users和Interactive,然后确定
④上述工作做完后就是同步COM+组件帐号 在CMD中输入cscript c:\inetpub\adminscripts\synciwam.vbs -v 回车帐号同步完毕
⑤最后就是在服务管理中重启一次World Wide Web Publishing Service服务好了,问题解决!
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)