公交车上荫蒂添的好舒服的电影-公用玩物(np双xing总受)-公用小荡货芊芊-公与妇仑乱hd-攻把受做哭边走边肉楼梯play-古装一级淫片a免费播放口

LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發(fā)文檔 其他文檔  
 
網(wǎng)站管理員

【ASP】如何利用GetLastError函數(shù)捕捉WEB頁面上的500.100錯誤位置和詳細信息

admin
2023年9月26日 17:1 本文熱度 1763

:【ASP】如何利用GetLastError函數(shù)捕捉WEB頁面上的500.100錯誤位置和詳細信息

我試圖診斷一個網(wǎng)站的問題,似乎是在代碼的地方拋出一個錯誤。從錯誤日志看來,它是一個SQL語法錯誤,由錯誤的SQL代碼錯誤串聯(lián)導致。我的問題是,我無法重現(xiàn)錯誤,但客戶仍然可以得到它,這可能是由許多查詢造成的。所以我的計劃是創(chuàng)建我自己的500錯誤頁面來捕捉結果。我想讓頁面捕獲所有會話數(shù)據(jù),所有POST和GET數(shù)據(jù)(我可以這樣做),但我也想捕獲關于錯誤的詳細信息。當網(wǎng)站允許顯示錯誤時,幾乎會在頁面上顯示的內容。用小箭頭指定該行。

有沒有辦法從自定義錯誤頁面中捕獲錯誤?


參考微軟公司官網(wǎng)頁面:define a custom 500 error code page,中文頁面:http://21420.oa22.cn,當你的程序崩潰時可以給你更多的信息。以下是一些示例代碼,它們會針對您的錯誤構建詳細的錯誤消息說明。

Set objASPError = Server.GetLastError

Dim strProblem

strProblem = "ASPCode: " & Server.HTMLEncode(objASPError.ASPCode) & vbCrLf

strProblem = strProblem & "Number: 0x" & Hex(objASPError.Number) & vbCrLf

strProblem = strProblem & "Source: [" & Server.HTMLEncode(objASPError.Source) & "]" & vbCrLf

strProblem = strProblem & "Category: " & Server.HTMLEncode(objASPError.Category) & vbCrLf

strProblem = strProblem & "File: " & Server.HTMLEncode(objASPError.File) & vbCrLf

strProblem = strProblem & "Line: " & CStr(objASPError.Line) & vbCrLf

strProblem = strProblem & "Column: " & CStr(objASPError.Column) & vbCrLf

strProblem = strProblem & "Description: " & Server.HTMLEncode(objASPError.Description) & vbCrLf

strProblem = strProblem & "ASP Description: " & Server.HTMLEncode(objASPError.ASPDescription) & vbCrLf

strProblem = strProblem & "Server Variables: " & vbCrLf & Server.HTMLEncode(Request.ServerVariables("ALL_HTTP")) & vbCrLf

strProblem = strProblem & "QueryString: " & Server.HTMLEncode(Request.QueryString) & vbCrLf

strProblem = strProblem & "URL: " & Server.HTMLEncode(Request.ServerVariables("URL")) & vbCrLf

strProblem = strProblem & "Content Type: " & Server.HTMLEncode(Request.ServerVariables("CONTENT_TYPE")) & vbCrLf

strProblem = strProblem & "Content Length: " & Server.HTMLEncode(Request.ServerVariables("CONTENT_LENGTH")) & vbCrLf

strProblem = strProblem & "Local Addr: " & Server.HTMLEncode(Request.ServerVariables("LOCAL_ADDR")) & vbCrLf

strProblem = strProblem & "Remote Addr: " & Server.HTMLEncode(Request.ServerVariables("LOCAL_ADDR")) & vbCrLf

strProblem = strProblem & "Time: " & Now & vbCrLf

也可以將錯誤輸出到根目錄下一個文本文件中:

<%

'Set this page up in IIS to receive HTTP 500 errors

''Type' needs to be 'URL' and the URL is e.g.: '/500Error.asp' if this file is named '500Error.asp' and is in the site root directory.

'This script assumes there is a "/Log" folder, and that IIS has write access to it.

Const ForReading = 1, ForWriting = 2, ForAppending = 8

Const TristateUseDefault = -2, TristateTrue = -1, TristateFalse = 0

Dim objFSO, err

Set objFSO=createObject("scripting.FileSystemObject")

Set err = Server.GetLastError()

outFile=Server.MapPath("/ErrorLog.txt")

Set objFile = objFSO.OpenTextFile(outFile, ForAppending, True, TristateTrue)

objFile.WriteLine Now & " - ERROR - ASPCode:" & err.ASPCode & " ASPDescription: " & err.ASPDescription & " Category: " & err.Category & " Description: " & err.Description & " File: " & err.File & " Line: " & err.Line & " Source: " & err.Source & vbCrLf

objFile.Close

Set objFile = Nothing

Set err = Nothing

%>

特別說明:

GetLastError函數(shù)貌似只在IIS6以前的版本中生效,在IIS7中GetLastError函數(shù)似乎沒有任何可用的信息。其實是在IIS7中,必須按照如下步驟設置后,GetLastError函數(shù)才會生效。

打開IIS管理器,找到網(wǎng)站ClickSun-》錯誤頁,雙擊“錯誤頁”:

雙擊“錯誤頁”,然后點擊右邊的“編輯功能設置”:

在以上頁面中,錯誤響應選擇:自定義錯誤頁,默認頁-》路徑換成自己編寫的錯誤捕捉頁面(頁面核心代碼見上面):/error_500.asp,路徑類型:執(zhí)行URL

保存后,雙擊狀態(tài)碼500:

響應操作改為:在此網(wǎng)站上執(zhí)行URL,URL地址還是上面自己開發(fā)的自定義錯誤攔截頁面(頁面核心代碼見上面):/error_500.asp,然后確定保存即可生效。

下面是攔截成功界面效果:

當然,設計這個HTTP500錯誤頁面攔截的根本目的就是不想用戶或黑客攻擊者看到真實的錯誤代碼,但又需要將這些錯誤信息發(fā)送給開發(fā)者或網(wǎng)管,所以需要在自定義的錯誤攔截頁面error_500.asp中,將上面的真實錯誤信息保存到數(shù)據(jù)庫或文本文件中,方便開發(fā)人員或網(wǎng)管予以分析解決,給用戶或黑客攻擊者看到的只需要是一個簡單的錯誤提醒圖片即可。


該文章在 2023/9/26 18:33:00 編輯過
關鍵字查詢
相關文章
正在查詢...
點晴ERP是一款針對中小制造業(yè)的專業(yè)生產(chǎn)管理軟件系統(tǒng),系統(tǒng)成熟度和易用性得到了國內大量中小企業(yè)的青睞。
點晴PMS碼頭管理系統(tǒng)主要針對港口碼頭集裝箱與散貨日常運作、調度、堆場、車隊、財務費用、相關報表等業(yè)務管理,結合碼頭的業(yè)務特點,圍繞調度、堆場作業(yè)而開發(fā)的。集技術的先進性、管理的有效性于一體,是物流碼頭及其他港口類企業(yè)的高效ERP管理信息系統(tǒng)。
點晴WMS倉儲管理系統(tǒng)提供了貨物產(chǎn)品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質期管理,貨位管理,庫位管理,生產(chǎn)管理,WMS管理系統(tǒng),標簽打印,條形碼,二維碼管理,批號管理軟件。
點晴免費OA是一款軟件和通用服務都免費,不限功能、不限時間、不限用戶的免費OA協(xié)同辦公管理系統(tǒng)。
Copyright 2010-2025 ClickSun All Rights Reserved

主站蜘蛛池模板: 国产精品日韩一区二区 | 精品国产91久久久久久黄无码 | 国产精品国三级国产av视色 | 国产欧美日韩综合一区激情 | 国产一区二区不卡在线 | 国产尤物无码一区二区 | 国产黄色片在线免费观看 | 91免费人成网站在线观看18 | 国产精品大片大片看大片 | 国产成人欧美一区二区三区vr | 91免费无| 92午夜福利影院一区二区三 | 97人妻碰碰视频 | 国产1卡2卡三卡四卡久久网站 | 国产精品人妻无码一区牛牛影视 | 另类欧美亚洲曰本 | 99精品国产福利在线观看 | 国产精品欧美一区二区三区 | 国产精品无码免费专区午夜 | 丰满一个美女app视频免费软 | 国产精品麻豆99久久 | 97人妻天天爽夜夜爽二区 | 国产成人高清一区二区私人 | 精品国产高清露脸在线观看 | 风韵人妻丰满熟妇老熟女图片 | 高潮毛片无遮免费高清 | 精品亚洲国产成人av网站 | 国产综合无码一区二区辣椒 | 国产精品中文字幕在线 | 国产成人精品一区二区三区免费 | 91精品国产手机 | 国产午夜亚洲精品午夜鲁丝片 | 国产精品乱码在线观看 | 国产69精品久久久久999小说 | 国产自在在线观看 | av国産精品毛片一区二区在线 | 岛国无码a | 国产精品香蕉在线 | 国产成人精品999在线观看 | 精品少妇白浆小泬 | 国产丰满美女a级毛片 |