網站管理員如何疑難排解有關 IIS 4.0 或 IIS 5.0 的「HTTP 500 - 內部伺服器錯誤」錯誤訊息

如题所述

Internal Server Error」?1. 检查日志档:搜寻应用程式和系统日志以寻找错误讯息。可以透过IIS管理器检查日志档,也可以使用事件检视器查看系统日志。2. 检查网站设定:确认网站设定是否正确,如IP、埠号、主机名称等。3. 检查应用程式设定:确认应用程式的设定是否正确,例如资料库连线字串、授权权限等。4. 清理暂存档:清理IIS的暂存档,以确保网站可以正常运作。5. 确认系统资源:查看系统资源是否已用尽,例如磁碟空间、RAM、CPU等。6. 检查IIS安全性:确认IIS伺服器的安全性设定是否正确,如设定权限、安全凭证等。7. 恢复系统状态:若以上所有解决方案失败,可以考虑使用系统还原以回复网站正常运作。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-10-31
發生這些錯誤的使用者應該將向網站管理員通報此問題。
當您嘗試載入 Localstart.asp 檔案時 當網站的預設文件之一 (Iisstart.asp) 嘗試載入 Localstart.asp 檔案,而嘗試存取網頁的使用者,沒有執行 Localstart.asp 檔案所包含指令碼的正確權限,便會收到 HTTP 500 錯誤訊息。如果您清除 [顯示易懂的 HTTP 錯誤訊息] 核取方塊,在 HTTP 500 錯誤訊息發生時您會看到類似下列的資訊:
Error Type:
Microsoft VBScript runtime (0x800A0046)
Permission denied:'GetObject'
/localstart.asp, line 19 (錯誤類型:Microsoft VBScript 執行階段 (0x800A0046) 權限被拒絕:'GetObject' /localstart.asp,第 19 行) 因為Localstart.asp 檔案包含使用 IIS Admin Objects 存取 Metabase 的 Active Directory Service Interfaces (ADSI) 和 Visual Basic Scripting Edition (VBScript) 程式碼。基於安全性考量,只有本機系統管理員群組的成員才能存取 Metabase。這是原本設計的做法。
如果要解決這個問題,請依照下列步驟執行: 按一下 [開始],指向 [程式集],指向 [系統管理工具],然後按一下 [Internet Information Services]。在主控台樹狀目錄中,按一下 [預設網站]。在顯示窗格中,用滑鼠右鍵按一下 [Localstart.asp],然後按一下 [內容]。在[檔案安全性] 索引標籤上,按一下 [匿名存取和驗證控制] 下的[編輯]。在[驗證方法] 內容頁面中,按一下以取消選取 [匿名存取]。當您瀏覽 ASP 網頁時當您瀏覽動態伺服器網頁 (ASP) 時,收到「HTTP 500.100 - 內部伺服器錯誤 - ASP 錯誤」錯誤訊息。如果您取消選取 [顯示易懂的 HTTP 錯誤訊息] 核取方塊,在 [技術資訊 (針對支援人員)] 區段中您會看到類似下列的資訊:
Error Type:
Microsoft VBScript runtime (0x800A01F4)
Variable is undefined:'x'
/OptionExplicitError.asp, line 9Page:GET /OptionExplicitError.asp (錯誤類型:Microsoft VBScript 執行階段 (0x800A01F4) 未定義變數:'x' /OptionExplicitError.asp,第 9 行 網頁:GET /OptionExplicitError.asp) 如果要解決此問題,請移除 Option Explicit 陳述式,或使用 DIM 關鍵字來宣告變數。
如果要重新產生此行為,請在允許執行指令碼的虛擬目錄中,執行包含下列程式碼的 ASP 檔案。
500-100 Undeclared Variable About to use an undeclared variable 如果要修正此範例,請使用 DIM 陳述式來宣告 X 變數,如下所示:
500-100 Undeclared Variable About to use an undeclared variable 當IIS 5.0 傳回 Server.GetLastError 錯誤訊息時無法使用 Web 應用程式或網頁時,IIS 便會傳回錯誤訊息。因此,自訂的 ASP 網頁會處理伺服器端指令碼錯誤的回應。此網頁傳回「500 內部伺服器錯誤」的狀態,此錯誤造成用戶端的遠端指令碼編寫 applet,不會將資料傳回遠端指令碼編寫物件。
如果要解決此問題,請建立傳回「200 OK」狀態的自訂錯誤網頁,然後在遠端指令碼編寫伺服器網頁,或應用程式的「自訂錯誤」區段中參照此網頁。如果要執行這項操作,請依照下列步驟執行:
注意:您可以為個別網頁、整個應用程式、整個網站或網站伺服器設定此自訂錯誤網頁。 請建立 %SystemRoot%\Help\IISHelp\Common\500-100.asp 的複本,然後把它儲存到與原始檔案相同的資料夾中。將新的檔案命名為 500-100-OK.asp。按一下 [開始],指向 [程式集],指向 [附屬應用程式],然後按一下 [記事本]。在[記事本] 中,按一下 [檔案] 功能表上的 [開啟舊檔]。在 [查詢] 下拉式方塊中,瀏覽至 500-100-OK.asp 檔案,然後按一下 [開啟]。將此程式碼
Response.Status = "500 Internal Server Error" 取代為下列程式碼:
Response.Status = "200 OK" 注意:如果之前並未修改過錯誤訊息,程式碼的原始行數會是第 12 行。
在[檔案] 功能表上,按一下 [儲存檔案]。在「Internet 服務管理員」的主控台樹狀目錄中,按一下您的網站伺服器。如果您的遠端指令碼編寫 ASP 網頁,存放在其中一個網站的網站應用程式中,請展開您的網站應用程式。在「詳細資訊」窗格中,用滑鼠右鍵按一下您的遠端指令碼編寫伺服器 ASP 網頁,然後按一下 [內容]。按一下 [自訂錯誤]。在清單中尋找 500;100 的項目。根據預設,會設定為 URL 並且參考 Help/Common/500-100.asp。按一下 [編輯內容]。修改路徑以指向 /IISHelp/Common/500-100-OK.asp,按一下 [確定],然後再按一下 [確定]。當您在非預設網站上使用 500-100.asp 檔案處理錯誤時當您在非預設網站上使用 500-100.asp 檔案處理錯誤時,會收到 HTTP 500 錯誤訊息。
如果要解決這個問題,請依照下列步驟執行: 在Internet Information Services 嵌入式管理單元的主控台樹狀目錄中,用滑鼠右鍵按一下適當的網站,按一下 [新增],然後按一下 [虛擬目錄]。在「虛擬目錄建立精靈」中,按一下 [下一步]。在 [別名] 文字方塊中,輸入 IISHelp,然後按一下 [下一步]。當提示您輸入內容資料夾的路徑時,按一下 [瀏覽],選取 WINNT\Help\IisHelp 資料夾,然後按一下 [下一步]。在[存取權限] 頁面中,接受所有的預設值,按一下 [下一步],然後按一下 [完成]。用滑鼠右鍵再按一下網站,然後按一下 [內容]。在[自訂錯誤] 索引標籤中,選取 "500;100" 錯誤資料行,然後按一下 [編輯內容]。在[訊息類型] 清單方塊中,在 [URL] 文字方塊中輸入 /iisHelp/common/500-100.asp。按一下 [確定],然後再按一下 [確定]。當您在 Index Server 上執行查詢時當您在 Index Server 中按一下 [開始] 來執行查詢時,您可能會收到 HTTP 500 錯誤訊息。
因為包含查詢頁面的資料夾尚未定義預設應用程式啟動點,所以會發生此錯誤。
如果要解決這個問題,請依照下列步驟執行: 在Internet Information Services 嵌入式管理單元中,用滑鼠右鍵按一下主控台樹狀目錄中包含查詢網頁的網站根目錄,然後按一下 [內容]。在[主目錄] 索引標籤上,按一下 [建立]。按一下 [確定],然後重新嘗試查詢。當您在 ASP 網頁中存取提供者時如果您取消選取 [顯示易懂的 HTTP 錯誤訊息] 核取方塊,當您嘗試在 ASP 網頁中存取提供者時,可能會收到下列錯誤訊息:
ADODB.Connection (0x800A0E7A) Provider cannot be found.It may not be properly installed./Nwind.asp, line 10 (找不到 ADODB. 連線 (0x800A0E7A) 提供者。可能並未正確安裝。/Nwind.asp,第 10 行) 因為Microsoft Data Access Components (MDAC) 需要的動態連結程式庫 (DLL) 並未登錄,所以會發生此錯誤。 按一下 [開始],按一下 [執行],然後輸入 cmd。在命令提示字元中,輸入 cd %systemroot%:\Program Files\Common Files\System\Ole。在命令提示字元中,輸入 regsvr32 sqloledb.dll。當您收到已成功登錄 DLL 的確認訊息時,按一下 [確定]。注意:此解決方案使用 Microsoft SQL Server OLE Provider DLL (Sqloledb.dll) 做為範例。因為未登錄的 DLL 可能會根據您使用的 OLE DB 提供者而有所不同,您必須根據情況修改步驟 2。當您在 IIS 5.0 上設定 COM+ 應用程式識別時當您嘗試在 IIS 5.0 上設定 COM+ 應用程式識別時,會收到 HTTP 500 錯誤訊息。
當COM+ 應用程式或 Microsoft Transaction Server (MTS) 套件的識別是根據 [互動式使用者 - 目前登入的使用者] 設定時,會發生此問題。因為目前並沒有使用者登入 IIS 主控台,所以無法執行應用程式。
如果要解決此問題,將 COM+ 應用程式或 MTS 套件的識別設定為 [本使用者],然後指定一個使用者帳戶。如果要執行這項操作,請依照下列步驟執行: 按一下 [開始],指向 [程式集],指向 [系統管理工具],然後按一下 [元件服務]。在主控台樹狀目錄中,依序展開 [元件服務]、[電腦]、[我的電腦] 和[COM+ 應用程式]。尋找您想要變更識別的應用程式。用滑鼠右鍵按一下適當的 COM+ 應用程式,然後按一下 [內容]。在[識別] 索引標籤上,按一下 [本使用者],輸入一個電腦的有效帳戶,然後按一下 [確定]。在IIS 4.0 上設定 MTS 應用程式識別碼時在IIS 4.0 上設定 MTS 應用程式識別碼時,收到 HTTP 500 錯誤訊息。
如果要解決這個問題,請依照下列步驟執行: 在Internet Information Services 嵌入式管理單元中,依序展開 [電腦]、[我的電腦] 和[Microsoft Transaction Server]。尋找您想要變更識別的套件。應用程式是列在「已安裝的套件」資料夾中。用滑鼠右鍵按一下套件,然後按一下 [內容]。在[識別] 索引標籤上,按一下 [本使用者],輸入一個有效的帳戶,然後按一下 [套用]。當IIS 4.0 在其所屬的記憶體空間中執行時當下列任何一種情況成立時,您就可能收到 HTTP 500 錯誤訊息: IIS 版本 4.0 的預設網站在其所屬的記憶體空間中,是以隔離的處理程序執行。Microsoft Internet Explorer 設定為使用 Proxy Server 2.0 上的 Web proxy。BackOffice Small Business Server 版本 4.5 中的 Internet Explorer 設定為使用 proxy 伺服器,並且啟用 proxy 伺服器封包篩選。 如果要解決這個問題,請依照下列步驟執行: 按一下 [開始],指向 [程式集],按一下 [Microsoft Proxy Server],然後按一下 [Microsoft Management Console]。在主控台樹狀目錄中,展開 [Internet Information Server] 資料夾,然後展開伺服器物件。用滑鼠右鍵按一下 [預設的網站],然後按一下 [內容]。在[主目錄] 索引標籤上,尋找 [應用程式設定] 區域,然後按一下以取消選取 [在不同的記憶體空間執行 (隔離的處理程序)。按一下 [套用],然後按一下 [確定]。用滑鼠右鍵按一下 [預設的網站],然後按一下 [停止]。用滑鼠右鍵按一下 [預設的網站],然後按一下 [啟動]。回此頁最上方 | 提供意見本回答被提问者采纳

相关了解……

你可能感兴趣的内容

大家正在搜

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网