测试IIS状态时出现“HTTP 错误 500.100 - 内部服务器错误 - ASP 错误”(菜鸟勿进)
因为是asp内部错误,只能提供你一些调试办法
① 使用监视工具(filemon、regmon分别监视文件、注册表)
② 使用500-100asp返回详细的ASP错误(261200)
网站属性-自定义错误-500:100编辑-消息类型-url-输入
url来源:右键网站-新建-描述输入iishelp-路径-c:\windows\Help\iisHelp-完成-网站-iishelp-common目录下找到文件500-100asp-右键浏览,复制所显示url,粘贴到上述的url位置上即可。注意输入的url须是相对url,去掉前面的ip,如iishelp/common/500-100asp)
③ 使用调试工具(IISState/AD+/Windbg)
④ 应用程序本身返回的500100错误解决办法
i 使用IDE继承环境进行调试
ii 使用Script Debugger
⑤ 组件丢失解决
i 现象ADODBConnection(0x800A0E7A)
ii 解决办法:regsvr32exe重新注册组件
⑥ ASP0115错误(未处理的错误)
i 产生原因:(194190)
文件注册表权限
不正确的组件注册
未处理的组件执行错误
ii 解决办法:(281674)
使用FileMon、RegMon提升AppPool用户权限
使用IISState找到出错的组件的错误原因
使用ADPlus
⑦ 执行脚本超时(active server page,asp 0113(080004005))
调整站点asp脚本超时时间
检查servertimeout
优化asp应用执行效率
乱码其实并不是什么问题,asp/php/jsp都有。我想所有转换编码的地方都会碰到。一般来说从头到尾始终使用同一种编码方式就不会有乱码。数据库使用的GBK编码,页面就也指定使用GBK编码。同样,数据库使用unicode编码,页面就请使用utf-8编码。如果出现乱码,肯定有地方使用了错误的编码格式。
用asp举例,如果你发现浏览页面的时候出现乱码。你可以尝试一下步骤:
确保你页面本身编码格式正确:例如testasp中使用charset=utf-8,那么请先确保这个文件本身就是Utf-8编码的。你可以利用记事本进行转换。同样如果使用charset=GBK,请先确保这个文件本身就是GBK编码的。
确认你得到的原数据(例如从数据库中得到的数据)编码方式与页面编码方式一至。
尝试指定IIS按什么编码读取。
<%@ codepage=65001%>UTF-8
<%@ codepage=936%>简体中文
<%@ codepage=950%>繁体中文
<%@ codepage=437 %>美国/加拿大英语
<%@ codepage=932 %>日文
<%@ codepage=949 %>韩文
<%@ codepage=866 %>俄文
codepage指定了IIS按什么编码读取。
例如采用UTF-8编码,就在文件的最上面加上 <%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
例如采用GBK编码,就在文件的最上面加上 <%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>
设置asp内置对象 符号映射 和 响应content-type header的编码
如果你采用utf-8编码, 就在文章最上面加上:
<% SessionCodePage=65001
ResponseCharset="UTF-8" %>
如果你采用GBK编码, 就在文章最上面加上:
<% SessionCodePage=936
ResponseCharset="GBK" %>
注意你可以把3,4中指出的设置放到一个被公共包含的文件(例如connasp)的最上面。那么所有的页面都应用此属性。
来自网上
有几个主要的错误原因:
这个错误发生在当你的程序试图执行更新数据库或其它类似操作时。这是因为
ADO由于以下的几个原因而不能够写数据库造成的。
1、最普遍的原因是匿名用户帐号(IUSR_MACHINE)对该数据库文件没有写权限。
要解决这个问题,在管理器中调整数据库文件的属性,让匿名用户有正确的权限。当使用ACCESS数据库时,不仅要给文件写的权限,还要给该目录写 的权限,因为Jet需要在该目录建立一个ldb文件。
2、第二个原因是数据库没有使用正确的模式打开。应该使用下面的方法打开。
SQL = "UPDATE Products Set UnitPrice = 2;"
Set Conn = ServerCreateObject("ADODBConnection")
ConnMode = 3 '3 = adModeReadWrite
ConnOpen "myDSN"
ConnExecute(SQL)
ConnClose
注意默认的Mode是设置0(adModeUnknown),它是允许更新的。
3、还有可能是在ODBC管理器中将该DSN的只读选项选中。
4、你是在同时更新两个表中的字段,也会出现这个错误信息,解决办法是分开来更新这两个表中各自字段。
5、当你使用了一个从低版本中(如ACCESS20,ACCESS70)载入到高版本(ACCESS 2000)中的查询时,在执行这个查询是会出现该错误
session("user_name") = ra("user_name")
if ra("adm")=1 then
ra("user_name")应该改为: rs("user_name")
ra("adm")=1改为rs("adm")=1
0条评论