PC6下载站

分类分类

有关win2000、IIS5中asp详细出错信息的显示

关注+2004-10-07作者:蓝点


            
             
              
             
            

               
               

            



            最近经常有人问在win2000和IIS5中不显示asp错误的详细信息,而只显示错误号,如"错误ID800xxxxx",这使得程序调试很不方便,有些人采取在IIS中设置500-100错误指向默认,这样做也不会出现详细的错误信息。实际上这可能是微软出于安全考虑而在500-100.asp中没有显示详细出错信息。其实,你只要把500-100.asp稍加修改就可以了。下面是我修改的这个文件的内容。你只要把他copy下来存为500-100.asp然后覆盖原来的这个文件就可以了。注意文件中两行横线之间就是我修改的部分。


500-100.asp:


<%@ language="VBScript" %>
<%
Option Explicit

Const lngMaxFormBytes = 200

Dim objASPError, blnErrorWritten, strServername, strServerIP, strRemoteIP
Dim strMethod, lngPos, datNow, strQueryString, strURL

If Response.Buffer Then
Response.Clear
Response.Status = "500 Internal Server Error"
Response.ContentType = "text/html"
Response.Expires = 0
End If

Set objASPError = Server.GetLastError
%>









本页无法显示
























本页无法显示



试图访问的网页出现问题,无法显示。






请尝试以下方法:




  • 单击

    刷新
    按钮或者梢候再试。



  • 打开



    主页,然后查找与所需信息相关的链接。



HTTP 500.100 - 内部服务器错误 - ASP 错误

Internet 信息服务






技术信息(适用于支持人员)




  • 错误类型:

    <%
    Dim bakCodepage
    bakCodepage = Session.Codepage
    Session.Codepage = 936
    Response.Write Server.HTMLEncode(objASPError.Category)
    If objASPError.ASPCode > "" Then Response.Write Server.HTMLEncode(", " & objASPError.ASPCode)
    Response.Write Server.HTMLEncode(" (0x" & Hex(objASPError.Number) & ")" ) & "
    "

    If objASPError.ASPDescription > "" Then Response.Write Server.HTMLEncode(objASPError.ASPDescription) & "
    "

    blnErrorWritten = False

    ' Only show the Source if it is available and the request is from the same machine as IIS
    If objASPError.Source > "" Then
    strServername = LCase(Request.ServerVariables("SERVER_NAME"))
    strServerIP = Request.ServerVariables("LOCAL_ADDR")
    strRemoteIP = Request.ServerVariables("REMOTE_ADDR")
    If (strServername = "localhost" Or strServerIP = strRemoteIP) And objASPError.File <> "?" Then
    Response.Write Server.HTMLEncode(objASPError.File)
    If objASPError.Line > 0 Then Response.Write ", 第 " & objASPError.Line & " 行"
    If objASPError.Column > 0 Then Response.Write ", 第 " & objASPError.Column & " 列"
    Response.Write "
    "
    Response.Write ""
    Response.Write Server.HTMLEncode(objASPError.Source) & "
    "
    If objASPError.Column > 0 Then Response.Write String((objASPError.Column - 1), "-") & "^
    "
    Response.Write "
    "
    blnErrorWritten = True
    End If
    End If

    If Not blnErrorWritten And objASPError.File <> "?" Then
    Response.Write ""
    Response.Write Server.HTMLEncode(objASPError.File)
    If objASPError.Line > 0 Then Response.Write Server.HTMLEncode(", 第 " & objASPError.Line & " 行")
    If objASPError.Column > 0 Then Response.Write ", 第 " & objASPError.Column & " 列"
    '-------------------------------------------------------------------
    ' added by Bigeagle
    ' date: 2000/5/10

    dim l_strAspDescription
    l_strAspDescription = "错误原因:" + objASPError.Description()
    if l_strAspDescription <> "" then
    response.write("

    " + l_strAspDescription+ "

    ")
    end if

    l_strAspDescription = "详细描述:" + objASPError.ASPDescription()
    if l_strAspDescription <> "" then
    response.write("

    " + l_strAspDescription+ "

    ")
    end if

    '-------------------------------------------------------------------
    Response.Write "

    "
    End If
    %>


  • 浏览器类型:

    <%= Request.ServerVariables("HTTP_USER_AGENT") %>


  • 页:

    <%
    strMethod = Request.ServerVariables("REQUEST_METHOD")

    Response.Write strMethod & " "

    If strMethod = "POST" Then
    Response.Write Request.TotalBytes & " bytes to "
    End If

    Response.Write Request.ServerVariables("SCRIPT_NAME")

    lngPos = InStr(Request.QueryString, "|")

    If lngPos > 1 Then
    Response.Write "?" & Left(Request.QueryString, (lngPos - 1))
    End If

    Response.Write "
  • "

    If strMethod = "POST" Then
    Response.Write "

  • POST 数据:
    "
    If Request.TotalBytes > lngMaxFormBytes Then
    Response.Write Server.HTMLEncode(Left(Request.Form, lngMaxFormBytes)) & " . . ."
    Else
    Response.Write Server.HTMLEncode(Request.Form)
    End If
    Response.Write "
  • "
    End If

    %>


  • 时间:

    <%
    datNow = Now()

    Response.Write Server.HTMLEncode(FormatDateTime(datNow, 1) & ", " & FormatDateTime(datNow, 3))
    Session.Codepage = bakCodepage
    %>



  • 详细信息:

    <% strQueryString = "prd=iis&sbp=&pver=5.0&ID=500;100&cat=" & Server.URLEncode(objASPError.Category) & _
    "&os=&over=&hrd=&Opt1=" & Server.URLEncode(objASPError.ASPCode) & "&Opt2=" & Server.URLEncode(objASPError.Number) & _
    "&Opt3=" & Server.URLEncode(objASPError.Description)
    strURL = "http://www.microsoft.com/ContentRedirect.asp?" & _
    strQueryString
    %>
    Microsoft 支持






展开全部

相关文章

更多+相同厂商

热门推荐

  • 最新排行
  • 最热排行
  • 评分最高
排行榜

    点击查看更多

      点击查看更多

        点击查看更多

        说两句网友评论

          我要评论...
          取消