Internal Server Error 500 w/ IIS Log

后端 未结 1 474
醉话见心
醉话见心 2020-12-21 09:09

I am getting some errors on my classic asp website. When the website runs for the first time it sometimes does an Internal Server Error. Then a refresh would fix it. I decid

相关标签:
1条回答
  • 2020-12-21 09:48

    How about setup custom pages for handle 500 and 500 100 errors?

    1. Create some folder, let's say D:\InetPub\Web01\Err\ Add IUSR_Web01 user with write permission

    2. In IIS for Web01 web site (sample for IIS 6.0) enter image description here

    3. Put following code in file 500.asp and 500100.asp

      Option Explicit
      Response.Buffer = True
      Response.Expires = -1
      Response.ExpiresAbsolute = #Jan 31,2000 12:30:00#
      
      Response.Clear
      
      Dim FS, TF, N, ASPErr
      N = Now
      
      Set ASPErr = Server.GetLastError() 
      
      Set FS = CreateObject ("Scripting.FileSystemObject")
      Set TF = FS.CreateTextFile ("D:\InetPub\1click.lv\Err\500 " & "Error" & Right ("0" & Year (N), 4) & Right ("0" & Month (N), 2) & Right ("0" & Day (N), 2) & "_" & Right ("0" & Hour (N), 2) & Right ("0" & Minute (N), 2) & Right ("0" & Second (N), 2) & ".txt", True, False)
      TF.Write MyErrorInfo (ASPErr, False, False, "1click.lv", "")
      TF.Close
      Set FS = Nothing
      
      Response.Write MyErrorInfo (ASPErr, True, True, "1click.lv", "zam@1click.lv")
      Err.Clear
      

    The function:

    Function MyErrorInfo (ASPErr, AsHTML, ShowContactInfo, WebTitle, AdminEmail)
        Dim Result
        Result = ""
        If AsHTML = True Then
            Result = Result & "<html><head><title>Error occur</title></head><body><font face=Verdana size=2>"
            If (ShowContactInfo = True) Then
                Result = Result & "<p align=center>"
                Result = Result & "<font size=4>"
                Result = Result & "<font color=""#008000"">" & WebTitle & "</font><br>"
                Result = Result & "<font color=""#800000"">500 Error occur</font><br>"
                Result = Result & "Please contact us by email at <a href=""mailto:" & AdminEmail & """>" & AdminEmail & "</a> and inform about this error<br><br>"
                Result = Result & "Thank you for your support!"
                Result = Result & "</font>"
                Result = Result & "</p>"
            End If
            Result = Result & "<hr>"
            Result = Result & "Error number: <b>" & ASPErr.Number & "</b><br>"
            Result = Result & "Error source: <b>" & ASPErr.Source  & "</b><br>"
            Result = Result & "Error description: <b>" & ASPErr.Description & "</b><br>"
            Result = Result & "Error line: <b>" & ASPErr.Line & "</b><br>"
            Result = Result & "Client IP: <b>" & Request.ServerVariables ("REMOTE_ADDR") & "</b><br>"
            Result = Result & "Client Browser: <b>" & Request.ServerVariables ("HTTP_USER_AGENT") & "</b><br>"
            Result = Result & "Client Referer: <b>" & Request.ServerVariables ("HTTP_REFERER") & "</b><br>"
            Result = Result & "Path: <b>" & Request.ServerVariables ("PATH_INFO") & "</b><br>"
            Result = Result & "Request method: <b>" & Request.ServerVariables ("REQUEST_METHOD") & "</b><br>"
            Result = Result & "Request FORM: <b>" & Request.Form & "</b><br>"
            Result = Result & "Request QUERY: <b>" & Request.QueryString & "</b><br>"
            Result = Result & "<hr>"
            Result = Result & "</font></body></html>"
        Else
            Result = Result & WebTitle & vbCrLf
            Result = Result & "Error number: " & ASPErr.Number & vbCrLf
            Result = Result & "Error source: " & ASPErr.Source  & vbCrLf
            Result = Result & "Error description: " & ASPErr.Description & vbCrLf
            Result = Result & "Error line: " & ASPErr.Line & vbCrLf
            Result = Result & "Client IP: " & Request.ServerVariables ("REMOTE_ADDR") & vbCrLf
            Result = Result & "Client Browser: " & Request.ServerVariables ("HTTP_USER_AGENT") & vbCrLf
            Result = Result & "Client Referer: " & Request.ServerVariables ("HTTP_REFERER") & vbCrLf
            Result = Result & "Path: " & Request.ServerVariables ("PATH_INFO") & vbCrLf
            Result = Result & "Request method: " & Request.ServerVariables ("REQUEST_METHOD") & vbCrLf
            Result = Result & "Request FORM: " & Request.Form & vbCrLf
            Result = Result & "Request QUERY: " & Request.QueryString & vbCrLf
        End If
        MyErrorInfo = Result
    End Function    
    
    0 讨论(0)
提交回复
热议问题