導航:首頁 > IDC知識 > iis500內部伺服器錯誤

iis500內部伺服器錯誤

發布時間:2020-12-09 12:37:01

1、新裝的IIS6,HTTP 500 - 內部伺服器錯誤,怎麼搞?

原因分析

主要是由於iwam賬號(在我的計算機即是iwam_myserver賬號)的密碼錯誤造成了http 500內部錯誤。

在詳細分析http500內部錯誤產生的原因之前,先對iwam賬號進行一下簡要的介紹:iwam賬號是安裝iis5時系統自動建立的一個內置賬號,主要用於啟動進程之外的應用程序的internet信息服務。iwam賬號的名字會根據每台計算機netbios名字的不同而有所不同,通用的格式是iwam_machine,即由「iwam」前綴、連接線「_」加上計算機的netbios名字組成。我的計算機的netbios名字是myserver,因此我的計算機上iwam賬號的名字就是iwam_myserver,這一點與iis匿名賬號isur_machine的命名方式非常相似。

iwam賬號建立後被active directory、iis metabase資料庫和com+應用程序三方共同使用,賬號密碼被三方分別保存,並由操作系統負責這三方保存的iwam密碼的同步工作。按常理說,由操作系統負責的工作我們大可放心,不必擔心出錯,但不知是bug還是其它什麼原因,系統的對iwam賬號的密碼同步工作有時會失敗,使三方iwam賬號所用密碼不統一。當iis或com+應用程序使用錯誤iwam的密碼登錄系統,啟動iis out-of-process pooled applications時,系統會因密碼錯誤而拒絕這一請求,導致iis out-of-process pooled applications啟動失敗,也就是我們在id10004錯誤事件中看到的「不能運行伺服器 3d14228d-fbe1-11d0-995d-00c04fd919c1} 」(這里 3d14228d-fbe1-11d0-995d-00c04fd919c1} 是iis out-of-process pooled applications的key),不能轉入iis5應用程序,http 500內部錯誤就這樣產生了。

解決辦法

知道了導致http 500內部錯誤的原因,解決起來就比較簡單了,那就是人工同步iwam賬號在active directory、iis metabase資料庫和com+應用程序中的密碼。

具體操作分三步,均需要以管理員身份登錄計算機以提供足夠的操作許可權(iwam賬號以iwam_myserver為例)。

(一)更改active directory中iwam_myserver賬號的密碼

因iwam賬號的密碼由系統控制,隨機產生,我們並不知道是什麼,為完成下面兩步的密碼同步工作,我們必須將iwam賬號的密碼設置為一個我們知道的值。

1、選擇「開始」->「程序」->「管理工具」->"active directory用戶和計算機",啟動「active directory用戶和計算機」管理單元。

2、單擊「user」,選中右面的「iwam_myserver」,右擊選擇「重設密碼(t)...」,在跳出的重設密碼對方框中給iwam_myserver設置新的密碼,這兒我們設置成「aboutnt2001」(沒有引號的),確定,等待密碼修改成功。

(二)同步iis metabase中iwam_myserver賬號的密碼

可能因為這項改動太敏感和重要,微軟並沒有為我們修改iis metabase中iwam_myserver賬號密碼提供一個顯式的用戶介面,只隨iis5提供了一個管理腳本adsutil.vbs,這個腳本位於c:\inetpub\adminscripts子目錄下(位置可能會因你安裝iis5時設置的不同而有所變動)。

adsutil.vbs腳本功能強大,參數非常多且用法復雜,這里只提供使用這個腳本修改iwam_myserver賬號密碼的方法:

adsutil set w3svc/wamuserpass password

"password"參數就是要設置的iwam賬號的新的密碼。因此我們將iis metabase中iwam_myserver賬號的密碼修改為「aboutnt2001」的命令就是:

c:\inetpub\adminscripts>adsutil set w3svc/wamuserpass "aboutnt2001"

修改成功後,系統會有如下提示:

wamuserpass: (string) "aboutnt2001"

(三)同步com+應用程序所用的iwam_myserver的密碼

同步com+應用程序所用的iwam_myserver的密碼,我們有兩種方式可以選擇:一種是使用組件服務mmc管理單元,另一種是使用iwam賬號同步腳本synciwam.vbs。

1、使用組件服務mmc管理單元

(1)啟動組件服務管理單元:選擇「開始」->「運行」->「mmc」,啟動管理控制台,打開「添加/刪除管理單元」對話框,將「組件服務」管理單元添加上。

(2)找到「組件服務」->「計算機」->「我的電腦」->「com+應用程序」->「out-of-process pooled applications」,右擊「out-of-process pooled applications」->「屬性」。

(3)切換到「out-of-process pooled applications」屬性對話框的「標志」選項卡。「此應用程序在下列賬戶下運行」選擇中「此用戶」會被選中,用戶名是「iwam_myserver」。這些都是預設的,不必改動。在下面的「密碼」和「確認密碼」文本框內輸入正確的密碼「aboutnt2001」,確定退出。

(4)系統如果提示「應用程序被一個以上的外部產品創建。你確定要被這些產品支持嗎?」時確定即可。

(5)如果我們在iis中將其它一些web的「應用程序保護」設置為「高(獨立的)」,那麼這個web所使用的com+應用程序的iwam賬號密碼也需要同步。重復(1)-(4)步,同步其它相應out of process application的iwam賬號密碼。

2、使用iwam賬號同步腳本synciwam.vbs

實際上微軟已經發現iwam賬號在密碼同步方面存在問題,因此在iis5的管理腳本中單獨為iwam賬號密碼同步編寫了一個腳本synciwam.vbs,這個腳本位於c:\inetpub\adminscripts子目錄下(位置可能會因你安裝iis5時設置的不同而有所變動)。

synciwam.vbs腳本用法比較簡單:

cscript synciwam.vbs [-v|-h]

「-v」參數表示詳細顯示腳本執行的整個過程(建議使用),「-h」參數用於顯示簡單的幫助信息。

我們要同步iwam_myserver賬號在com+應用程序中的密碼,只需要執行「cscript synciwam.vbs -v」即可,如下:

cscript c:\inetpub\adminscripts\synciwam.vbs -v

microsoft (r) windows script host version 5.6

版權所有(c) microsoft corporation 1996-2000。保留所有權利。

wamusername:iwam_myserver

wamuserpass:aboutnt2001

iis applications defined:

name, appisolated, package id

w3svc, 0, 3d14228c-fbe1-11d0-995d-00c04fd919c1}

root, 2,

iishelp, 2,

iisadmin, 2,

iissamples, 2,

msadc, 2,

root, 2,

iisadmin, 2,

iishelp, 2,

root, 2,

root, 2,

out of process applications defined:

count: 1

3d14228d-fbe1-11d0-995d-00c04fd919c1}

updating applications:

name: iis out-of-process pooled applications key: 3d14228d-fbe1-11d0-995d-00c04fd919c1}

從上面腳本的執行情況可以看出,使用synciwam.vbs腳本要比使用組件服務的方法更全面和快捷。它首先從iis的metabase資料庫找到iwam賬號"iwam_myserver"並取出對應的密碼「aboutnt2001」,然後查找所有已定義的iis applications和out of process applications,並逐一同步每一個out of process applications應用程序的iwam賬號密碼。

使用synciwam.vbs腳本時,要注意一個問題,那就是在你運行synciwam.vbs之前,必須保證iis metabase資料庫與active directory中的iwam密碼已經一致。因為synciwam.vbs腳本是從iis metabase資料庫而不是從active directory取得iwam賬號的密碼,如果iis metabase中的密碼不正確,那synciwam.vbs取得的密碼也會不正確,同步操作執行到「updating applications」系統就會報80110414錯誤,即「找不到應用程序 3d14228d-fbe1-11d0-995d-00c04fd919c1}」。

好了,到現在為止,iwam賬號在active directory、iis metabase資料庫和com+應用程序三處的密碼已經同步成功,你的asp程序又可以運行了!

修改成功後,系統會有如下提示:
---------------------------------------------------
經過測試,顯示應該是
wamuserpass: (string) "*******"

2、win7 iis7 http 500伺服器內部錯誤 求解決方法

你調試的是ASP頁面么?如果出現500錯誤,建議開啟詳細錯誤信息,然後根據詳細錯誤信息來發現和解決你的具體錯誤。1、打開IIS7的功能視圖 :「ASP-打開功能(右邊頂部)-調試屬性」里「將詳細錯誤發送到瀏覽器」後面改為「TRUE」,然後點右邊的「應用」;2、然後在「錯誤頁」設置選項里,雙擊 500 那一行,再點文件按路徑後面的「設置」。在跳出的對話框中將「相對文件路徑」里默認的文件名「500.htm」改為「500-100.asp」,確定。 3、在IE瀏覽器的「Internet選項」中,把「高級」里的「顯示友好HTTP錯誤信息」的小勾勾去掉。這時候再調試ASP就會出現具體的錯誤,根據具體的錯誤提示查找在線幫助文檔即可找出對應的解決方法!
比如對於新手常見的錯誤有:
詳細錯誤信息顯示的是 「Active Server Pages 錯誤 『ASP 0131′ 幫助文檔查找即可知道錯誤原因即為「不允許的父路徑」, 請按照下列步驟操作啟用父路徑:
1. 單擊 開始,單擊 管理工具,然後單擊 Internet Information Services 管理器。
2. 在 IIS 控制台中展開 Web 站點運行 OWA (通常這是 默認網站)。
3. 找到包含 ASP Web 應用程序的 Web 文件夾。
4. 用滑鼠右鍵單擊 Web 文件夾,然後單擊 屬性。
5. 在 目錄 選項卡上單擊 應用程序設置 部分的 配置。
6. 在 應用程序選項 選項卡上單擊以選中 啟用父路徑 復選框。
7. 單擊 確定,然後單擊 確定,再次以應用所做的更改。
一般來說調試ASP時出現500錯誤,大多數情況下是你的ASP程序的原因,或者是目錄許可權未設置好造成的。開啟了詳細錯誤信息,有助於你及時發現錯誤。

3、iis 的 http 500 內部伺服器錯誤怎麼解決????

IIS500錯誤,是因為微軟的一個BUG所造成的。下面是解決辦法:

主要是由於IWAM賬號(在我的計算機即是IWAM_MYSERVER賬號)的密碼錯誤造成了HTTP 500內部錯誤。

在詳細分析HTTP500內部錯誤產生的原因之前,先對IWAM賬號進行一下簡要的介紹:IWAM賬號是安裝IIS5時系統自動建立的一個內置賬號,主要用於啟動進程之外的應用程序的Internet信息服務。IWAM賬號的名字會根據每台計算機NETBIOS名字的不同而有所不同,通用的格式是IWAM_MACHINE,即由「IWAM」前綴、連接線「_」加上計算機的NETBIOS名字組成。我的計算機的NETBIOS名字是MYSERVER,因此我的計算機上IWAM賬號的名字就是IWAM_MYSERVER,這一點與IIS匿名賬號ISUR_MACHINE的命名方式非常相似。

IWAM賬號建立後被Active Directory、IIS metabase資料庫和COM+應用程序三方共同使用,賬號密碼被三方分別保存,並由操作系統負責這三方保存的IWAM密碼的同步工作。按常理說,由操作系統負責的工作我們大可放心,不必擔心出錯,但不知是BUG還是其它什麼原因,系統的對IWAM賬號的密碼同步工作有時會失敗,使三方IWAM賬號所用密碼不統一。當IIS或COM+應用程序使用錯誤IWAM的密碼登錄系統,啟動IIS Out-Of-Process Pooled Applications時,系統會因密碼錯誤而拒絕這一請求,導致IIS Out-Of-Process Pooled Applications啟動失敗,也就是我們在ID10004錯誤事件中看到的「不能運行伺服器{3D14228D-FBE1-11D0-995D-00C04FD919C1} 」(這里{3D14228D-FBE1-11D0-995D-00C04FD919C1} 是IIS Out-Of-Process Pooled Applications的KEY),不能轉入IIS5應用程序,HTTP 500內部錯誤就這樣產生了。

解決辦法

手工同步賬號

知道了導致HTTP 500內部錯誤的原因,解決起來就比較簡單了,那就是人工同步IWAM賬號在Active Directory、IIS metabase資料庫和COM+應用程序中的密碼。

具體操作分三步,均需要以管理員身份登錄計算機以提供足夠的操作許可權(IWAM賬號以IWAM_MYSERVER為例)。

(一)更改Active Directory中IWAM_MYSERVER賬號的密碼

因IWAM賬號的密碼由系統控制,隨機產生,我們並不知道是什麼,為完成下面兩步的密碼同步工作,我們必須將IWAM賬號的密碼設置為一個我們知道的值。

1、選擇「開始」->「程序」->「管理工具」->"Active Directory用戶和計算機",啟動「Active Directory用戶和計算機」管理單元。

2、單擊「user」,選中右面的「IWAM_MYSERVER」,右擊選擇「重設密碼(T)...」,在跳出的重設密碼對方框中給IWAM_MYSERVER設置新的密碼,這兒我們設置成「Aboutnt2001」(沒有引號的),確定,等待密碼修改成功。

(二)同步IIS metabase中IWAM_MYSERVER賬號的密碼

可能因為這項改動太敏感和重要,微軟並沒有為我們修改IIS metabase中IWAM_MYSERVER賬號密碼提供一個顯式的用戶介面,只隨IIS5提供了一個管理腳本adsutil.vbs,這個腳本位於C:\\inetpub\\adminscripts子目錄下(位置可能會因你安裝IIS5時設置的不同而有所變動)。

adsutil.vbs腳本功能強大,參數非常多且用法復雜,這里只提供使用這個腳本修改IWAM_MYSERVER賬號密碼的方法:

adsutil SET w3svc/WAMUserPass Password

"Password"參數就是要設置的IWAM賬號的新的密碼。因此我們將IIS metabase中IWAM_MYSERVER賬號的密碼修改為「Aboutnt2001」的命令就是:

c:\\Inetpub\\AdminScripts>adsutil SET w3svc/WAMUserPass "Aboutnt2001"

修改成功後,系統會有如下提示:

WAMUserPass: (String) "Aboutnt2001"

(三)同步COM+應用程序所用的IWAM_MYSERVER的密碼

同步COM+應用程序所用的IWAM_MYSERVER的密碼,我們有兩種方式可以選擇:一種是使用組件服務MMC管理單元,另一種是使用IWAM賬號同步腳本synciwam.vbs。

1、使用組件服務MMC管理單元

(1)啟動組件服務管理單元:選擇「開始」->「運行」->「MMC」,啟動管理控制台,打開「添加/刪除管理單元」對話框,將「組件服務」管理單元添加上。

(2)找到「組件服務」->「計算機」->「我的電腦」->「COM+應用程序」->「Out-Of-Process Pooled Applications」,右擊「Out-Of-Process Pooled Applications」->「屬性」。

(3)切換到「Out-Of-Process Pooled Applications」屬性對話框的「標志」選項卡。「此應用程序在下列賬戶下運行」選擇中「此用戶」會被選中,用戶名是「IWAM_MYSERVER」。這些都是預設的,不必改動。在下面的「密碼」和「確認密碼」文本框內輸入正確的密碼「Aboutnt2001」,確定退出。

(4)系統如果提示「應用程序被一個以上的外部產品創建。你確定要被這些產品支持嗎?」時確定即可。

(5)如果我們在IIS中將其它一些Web的「應用程序保護」設置為「高(獨立的)」,那麼這個WEB所使用的COM+應用程序的IWAM賬號密碼也需要同步。重復(1)-(4)步,同步其它相應Out of process application的IWAM賬號密碼。

2、使用IWAM賬號同步腳本synciwam.vbs

實際上微軟已經發現IWAM賬號在密碼同步方面存在問題,因此在IIS5的管理腳本中單獨為IWAM賬號密碼同步編寫了一個腳本synciwam.vbs,這個腳本位於C:\\inetpub\\adminscripts子目錄下(位置可能會因你安裝IIS5時設置的不同而有所變動)。

synciwam.vbs腳本用法比較簡單:

cscript synciwam.vbs [-v|-h]

「-v」參數表示詳細顯示腳本執行的整個過程(建議使用),「-h」參數用於顯示簡單的幫助信息。

我們要同步IWAM_MYSERVER賬號在COM+應用程序中的密碼,只需要執行「cscript synciwam.vbs -v」即可,如下:

cscript c:\\inetpub\\adminscripts\\synciwam.vbs -v

Microsoft (R) Windows Script Host Version 5.6

版權所有(C) Microsoft Corporation 1996-2000。保留所有權利。

WamUserName:IWAM_MYSERVER

WamUserPass:Aboutnt2001

IIS Applications Defined:

Name, AppIsolated, Package ID

w3svc, 0, {3D14228C-FBE1-11d0-995D-00C04FD919C1}

Root, 2,

IISHelp, 2,

IISAdmin, 2,

IISSamples, 2,

MSADC, 2,

ROOT, 2,

IISAdmin, 2,

IISHelp, 2,

Root, 2,

Root, 2,

Out of process applications defined:

Count: 1

{3D14228D-FBE1-11d0-995D-00C04FD919C1}

Updating Applications:

Name: IIS Out-Of-Process Pooled Applications Key: {3D14228D-FBE1-11D0-995D-00C04FD919C1}

從上面腳本的執行情況可以看出,使用synciwam.vbs腳本要比使用組件服務的方法更全面和快捷。它首先從IIS的metabase資料庫找到IWAM賬號"IWAM_MYSERVER"並取出對應的密碼「Aboutnt2001」,然後查找所有已定義的IIS Applications和Out of process applications,並逐一同步每一個Out of process applications應用程序的IWAM賬號密碼。

使用synciwam.vbs腳本時,要注意一個問題,那就是在你運行synciwam.vbs之前,必須保證IIS metabase資料庫與Active Directory中的IWAM密碼已經一致。因為synciwam.vbs腳本是從IIS metabase資料庫而不是從Active Directory取得IWAM賬號的密碼,如果IIS metabase中的密碼不正確,那synciwam.vbs取得的密碼也會不正確,同步操作執行到「Updating Applications」系統就會報80110414錯誤,即「找不到應用程序{3D14228D-FBE1-11D0-995D-00C04FD919C1}」。

批處理同步

可以用一些BAT來修復這類IE問題的.
好了,到現在為止,IWAM賬號在Active Directory、IIS metabase資料庫和COM+應用程序三處的密碼已經同步成功,你的ASP程序又可以運行了!

把下面的語句復制出來,粘貼到文本文件中.然後把文本文件保存生擴展名為.BAT的文件.例如:ie.bat.雙擊打開該BAT文件.一步步確定到最後.問題就能解決了.
IE.BAT

rem =====第七頻道批處理開始========

rundll32.exe /s advpack.dll /DelNodeRunDLL32 C:\\WINNT\\System32\\dacui.dll
rundll32.exe /s advpack.dll /DelNodeRunDLL32 C:\\WINNT\\Catroot\\icatalog.mdb
regsvr32 /s setupwbv.dll
regsvr32 /s wininet.dll
regsvr32 /s comcat.dll
regsvr32 /s shdoc401.dll
regsvr32 /s shdoc401.dll /i
regsvr32 /s asctrls.ocx
regsvr32 /s oleaut32.dll
regsvr32 /s shdocvw.dll /I
regsvr32 /s shdocvw.dll
regsvr32 /s browseui.dll
regsvr32 /s browseui.dll /I
regsvr32 /s msrating.dll
regsvr32 /s mlang.dll
regsvr32 /s hlink.dll
regsvr32 /s mshtml.dll
regsvr32 /s mshtmled.dll
regsvr32 /s urlmon.dll
regsvr32 /s plugin.ocx
regsvr32 /s sendmail.dll
regsvr32 /s comctl32.dll /i
regsvr32 /s inetcpl.cpl /i
regsvr32 /s mshtml.dll /i
regsvr32 /s scrobj.dll
regsvr32 /s mmefxe.ocx
regsvr32 /s proctexe.ocx mshta.exe /register
regsvr32 /s corpol.dll
regsvr32 /s jscript.dll
regsvr32 /s msxml.dll
regsvr32 /s imgutil.dll
regsvr32 /s thumbvw.dll
regsvr32 /s cryptext.dll
regsvr32 /s rsabase.dll
regsvr32 /s triedit.dll
regsvr32 /s dhtmled.ocx
regsvr32 /s inseng.dll
regsvr32 /s iesetup.dll /i
regsvr32 /s hmmapi.dll
regsvr32 /s cryptdlg.dll
regsvr32 /s actxprxy.dll
regsvr32 /s dispex.dll
regsvr32 /s occache.dll
regsvr32 /s occache.dll /i
regsvr32 /s iepeers.dll
regsvr32 /s wininet.dll /i
regsvr32 /s urlmon.dll /i
regsvr32 /s digest.dll /i
regsvr32 /s cdfview.dll
regsvr32 /s webcheck.dll
regsvr32 /s mobsync.dll
regsvr32 /s pngfilt.dll
regsvr32 /s licmgr10.dll
regsvr32 /s icmfilter.dll
regsvr32 /s hhctrl.ocx
regsvr32 /s inetcfg.dll
regsvr32 /s trialoc.dll
regsvr32 /s tdc.ocx
regsvr32 /s MSR2C.DLL
regsvr32 /s msident.dll
regsvr32 /s msieftp.dll
regsvr32 /s xmsconf.ocx
regsvr32 /s ils.dll
regsvr32 /s msoeacct.dll
regsvr32 /s wab32.dll
regsvr32 /s wabimp.dll
regsvr32 /s wabfind.dll
regsvr32 /s oemiglib.dll
regsvr32 /s directdb.dll
regsvr32 /s inetcomm.dll
regsvr32 /s msoe.dll
regsvr32 /s oeimport.dll
regsvr32 /s msdxm.ocx
regsvr32 /s dxmasf.dll
regsvr32 /s laprxy.dll
regsvr32 /s l3codecx.ax
regsvr32 /s acelpdec.ax
regsvr32 /s mpg4ds32.ax
regsvr32 /s voxmsdec.ax
regsvr32 /s danim.dll
regsvr32 /s Daxctle.ocx
regsvr32 /s lmrt.dll
regsvr32 /s datime.dll
regsvr32 /s dxtrans.dll
regsvr32 /s dxtmsft.dll
regsvr32 /s vgx.dll
regsvr32 /s WEBPOST.DLL
regsvr32 /s WPWIZDLL.DLL
regsvr32 /s POSTWPP.DLL
regsvr32 /s CRSWPP.DLL
regsvr32 /s FTPWPP.DLL
regsvr32 /s FPWPP.DLL
regsvr32 /s FLUPL.OCX
regsvr32 /s wshom.ocx
regsvr32 /s wshext.dll
regsvr32 /s vbscript.dll
regsvr32 /s scrrun.dll mstinit.exe /setup
regsvr32 /s msnsspc.dll /SspcCreateSspiReg
regsvr32 /s msapsspc.dll /SspcCreateSspiReg

rem =====批處理結束========

另:

前面都很順利,但在「開始」->「設置」->「控制面板」->「管理工具」->「組件服務」中,「控制台根

目錄」->「組件服務」->「計算機」-

>「我的電腦」->「COM+應用程序」中,右鍵啟動IIS Out-Of-Process Pooled Applications,發現仍然

報錯,沒辦法重啟IIS,發現問題現象

依舊如故,檢查上面第三個步驟,輸入csript synciwam.vbs -v命令後,返回的腳本執行情況其中最後一

段有一個Error的提示。一段英文,具

體文字描述未能保存下來,意思理解為:IIS的原資料庫拒絕訪問。
4、萬般無奈,刪除IIS的組件包,重新建立之,仍然無效。

至此又出現問題了。

查看應用程序日誌和系統日誌,發現錯誤提示事件ID號依舊為:10010、36、4205
上述的三個步驟中,前面兩步應該都沒有問題,最後一步好象有點問題。
根據事件ID號,查找相關資料,找出解決辦法如下:
在「開始」->「設置」->「控制面板」->「管理工具」->「計算機管理」中,「系統工具」->「本地用戶

和組」->「用戶」裡面,確認IWAM_My

server用戶只在GUEST組內,再在「本地用戶和組」->「組」裡面,右鍵點擊Users組屬性,添加進NT

AUTHORITY\\Authenticated Users和NT

AUTHORITY\\Interactive兩個用戶成員,確定。

重復第三個步驟,即在IIS安裝默認目錄下輸入:c:\\inetpub\\adminscripts> csript synciwam.vbs -v
根據返回的腳本執行情況進行查看,最後那一段的Error已經沒有了,將COM+程序的用戶改回為IWAM用戶

,重新啟動IIS Out-Of-Process

Pooled Applications應用程序,沒有再報錯了,再重啟IIS,檢查所有WEB站點服務,故障現象解除!

也就是說到了這一步IIS下面的ASP程序才正式恢復重新啟動。
至此,故障現象全部排除!

因此,以下幾點需要注意的:
1、事件日誌的空間設置稍微放大一些,默認才512K,根據硬碟空間,適當放大一些,避免出現日誌文件已滿的情況;
2、不要隨便輕易清空事件日誌中的事件記錄,很多故障現象需要從這個裡面下手找原因;
3、所有返回的系統提示信息一定要注意仔細查看;
4、IIS中的應用程序保護應為中或高,如為低,則所有ASP頁面均以本地系統許可權運行,安全性存在問題。
5、COM+程序的用戶許可權和用戶啟動許可權很重要,應注意檢查。
6、系統默認組有時有重要作用,不能輕易刪除或修改。
7、系統重要文件(如SAM)不可輕易刪除,應盡可能採取妥善的解決方法。如使用外部程序修改注冊表或SAM表信息以獲得管理員許可權。而不要刪除該文件。

通過這個問題,偶發現一些看似復雜和不可思議的問題,只要動腦筋,通過仔細查看、分析,再到網上找到一些有關的文章加以對比——但也切忌死搬硬套——找到自己問題的根結所在,再找出相應的解決辦法,問題最終總會迎刃而解。

4、IIS不能瀏覽ASP了,HTTP 500 - 內部伺服器錯誤

在網上查了查解決方案如下:

1。右鍵我的電腦--管理--本地用戶和組,給IUSR_機器名和IWAM_機器名兩個用戶設置密碼,要一樣。

2。開始--運行--打cmd,
然後cd D:InetpubAdminscripts(我的系統在D盤),
然後cscript.exe adsutil.vbs set w3svc/wamuserpass 你的密碼,
然後cscript.exe adsutil.vbs set w3svc/anonymoususerpass 你的密碼

看一下,行了沒有?如果還不行,那麼
cscript.exe synciwam.vbs -v,
然後iisreset。

據說就可以了,但是到最後一部提示8004e00f的錯誤,此錯誤是MSDTC服務不正常造成的,解決方法:

首先進入組件服務,查看組件服務/計算機/我的電腦/COM+應用程序,結果報錯「COM+ 無法與 Microsoft 分布式事務協調程序交談」,無法查看裡面的對象。
2、進入事件查看器,發現msdtc服務沒有正常啟動。
3、刪除注冊表中的鍵:
• HKEY_LOCAL_
• HKEY_LOCAL_MACHINESOFTWAREMicrosoftMSDTC
• HKEY_CLASSES_ROOTCID
4、停止MSDTC服務:net stop msdtc
5、卸載MSDTC服務:msdtc -uninstall
6、重新安裝MSDTC服務:msdtc -install
7、確認在事件查看器中msdtc服務已經正常啟動[這步很關鍵,如果沒有,重新啟動下電腦看看]
8、重新設置IIS的IWAM賬號密碼。[在計算機管理中的用戶管理里]
9、同步IIS metabase中IWAM_MYSERVER的密碼,在CMD中:c:inetputadminscripts>adsutil set w3svc/wamuserpass "yourpassword"
10、同步COM+應用程序所用的IWAM_MYSERVER密碼,在CMD中:c:inetputadminscripts>cscript synciwam.vbs -v

到這部分網上大部分都說可以了,但是我這里雖然沒有8004e00f的錯誤提示了,但是訪問頁面Server Application Error 錯誤依舊,最後終於找到了解決方法如下:

解決辦法:
[1]:
檢查你的DTC服務(全名:Distributed Transaction Coordinator)是否可以正常啟動,

如果正常的話請你跳過此步驟;如果出錯,無法正常啟動,請在開始菜單的運行中 運行:msdtc -resetlog 以創建日誌文件。重起機器,檢查IIS是否可以正常使用,若不行繼續。

[2]:
在CMD下執行以下命令:
cd %windir%\system32\inetsrv

rundll32 wamreg.dll, CreateIISPackage

regsvr32 asptxn.dll

(到這里我就可以用了,不用重啟的)

OK,ASP頁面一切正常了@!~~~^_^

5、安裝了iis打開asp文件提示HTTP500內部伺服器錯誤

用NetBox 直接放在根目錄下面 雙擊就可以用了
IIS 的500錯誤 先查一下你的ASP文件 如果不是路徑等問題 可以試一版下下面的方法權
XP+IIS5.0
1. 運行:regsvr32 %windir%/system32/vbscript.dll (其實這一步也可以省,確保萬一,還是執行吧)
2. 運行:msdtc -resetlog
3. 重新安裝IIS

http://blog.sina.com.cn/s/blog_4e6ceae00100cmz1.html

在不行就HI我

6、IIS7 出現HTTP 500內部伺服器錯誤

1、在控制面板—管理工具—服務 中確認"Distributed Transaction Coordinator"服務有沒有啟動,沒有啟動就啟動它,並設置成自動。

如果遇到"Distributed Transaction Coordinator"服務無法啟動怎麼辦?

在命令提示符里輸入
msdtc -resetlog

然後就可以啟動該服務了。
2、運行 c:\Inetpub\AdminScripts 腳本文件夾中的 synciwam.vbs文件

3.在命令行狀態下輸入以下命令(注意大小寫):

cd c:\windows\system32\inetsrv
rundll32 wamreg.dll, CreateIISPackage
regsvr32 asptxn.dll
然後重新啟動IIS服務,asp文件就可以正常訪問了。

7、IIS出現HTTP 500 - 內部伺服器錯誤

重裝系統,一切問題解決了

8、IIS不能瀏覽ASP了,HTTP 500 - 內部伺服器錯誤

在運行里輸:CMD回車
輸入regsvr32 jscript.dll回車,成功後再輸入
regsvr32 vbscript.dll 回車成功後,OK,可以打開網頁了吧,分給我哦。

9、iis http 500 內部伺服器錯誤?????

解決來辦法如下:
1、刪除源「internet信息服務」,
2、重啟機子,按F8進入「安全模式」,
3、在安全模式下將「C:\Inetpub」、「c:\windows\iis6.log」、「c:\windows\system32\inetsrv」這幾個東西重命名。
4、重啟機子,在正常模式下安裝「internet信息服務」,安裝完畢刪除重命名文件。
5、如果還不能解決問題,打開「internet信息服務」,「重新啟動IIS」。

如果再不行來找我...

10、IIS總出現:HTTP 500 內部伺服器錯誤 重裝IIS後還是這樣,請問如何解決?

這種情況一般是IIS造成的。
我曾經多次碰到。
重裝IIS,大部分時候都可以解決這個問題,但是不絕對。

存有網頁的伺服器在不在你的控制之類?
如果沒有在你的控制之類,就只能聯系網站伺服器的管理員來重裝了。

在控制面板、添加刪除程序裡面重裝。

IIS——
Internet Information Server
Internet信息服務
在操作系統裡面,很多時候顯示為Internet服務管理器。

重裝之後,在控制面板、管理工具裡面可以找到。
ASP中常見的80004005錯誤原因及解決

錯誤信息:

Microsoft OLE DB Provider for ODBC Drivers error 』80004005』[Microsoft][ODBC Microsoft Access 97 Driver] The Microsoft Jet databaseengine cannot open the file 』(unknown)』. It is already opened exclusively by another user, or you need permission to view its data.

原因:

這個錯誤發生在當IIS使用匿名帳號(通常是IUSR)時,該帳號在NT中對資料庫所在的目錄 沒有正確的許可權.(這就是為什麼在Win95和PWS下沒問題,因為win95根本就沒有目錄許可權這一說)

檢查文件和目錄的許可權. 確定你能夠在該目錄中有能夠新建和刪除臨時文件的許可權。

這些臨時文件其實是資料庫建立在同一個目錄下的文件, 但是要注意的是,有可能這些文件也可能建立在別的目錄,例如 /Winnt.

使用NT的文件監視程序監視文件失敗時到底是訪問了什麼目錄。

這個NT的文件監視程序可以在這個地方下載http://www.sysinternals.com.

如果你對資料庫使用了一個網路地址,例如映射地址,就要檢查一下共享文件和目錄的許可權,還要檢查一下數據源文件(DSN)是否被別的程序標志成為正在使用中,這些別的程序一般是Visual InterDev,關閉任何一個InterDev中的正打開和資料庫連接的項目。

這個錯誤還可能發生在這種情況:如果在DSN中使用了一個UNC路徑(就是通用命名協議),請改用本地路徑進行測試,因為如果對本地資料庫使用UNC也可能出錯。

還可能發生在這種情況,如果伺服器要訪問Access中的一個表,而這個表卻聯接在一個網路伺服器上。

---------------------------------------------------------------------

錯誤信息:

Microsoft OLE DB Provider for ODBC Drivers error 』80004005』 [Microsoft][ODBC Microsoft Access 97 Driver] Couldn』t use 』(unknown)』; file already in use.

原因:

多人使用時資料庫被鎖定。

錯誤信息:

Microsoft OLE DB Provider for ODBC Drivers error 』80004005』 [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified.

原因:

最可能的原因是ConnectString是一個在global.asa中初始化的Session變數,但是global.asa 卻沒有正常工作。解決辦法是,檢查賦值時是否正確:(在你的asp中加入下面的代碼)

<%= "』auth_user』 is " & request.servervariables("auth_user")%>

<P>

<%= "』auth_type』 is " & request.servervariables("auth_type")%>

<P>

<%= "connection string is " & session("your_connectionstring")%>

還有一個原因就是你在你的ConnectString中加入了多餘的空格,例如

DSN = MyDSN; Database = Pubs;

試試改成下面這個樣子:

DSN=MyDSN;Database=Pubs;

如果是global.asa還沒有工作,檢查該文件是否在運用程序的根目錄中,或者是虛擬目錄的根目錄中。

還有可能錯誤出現的原因是DSN名稱沒找著,這可以採用我提供的id=36767的辦法解決。

最後是檢查是否安裝了最新的驅動程序,既是否是最新的MDAC版本。

---------------------------------------------------------------------

錯誤信息

Microsoft OLE DB Provider for ODBC Drivers error 』80004005』

[Microsoft][ODBC Driver Manager] Data source name not ??

原因:

這個錯誤有可能是出現在你的計算機上軟體安裝(或則反安裝)的順序上。

如果ODBC的版本不一致的話,就會發生該錯誤。

解決辦法是安裝最新版本的MDAC

---------------------------------------------------------------------

錯誤信息:

Microsoft OLE DB Provider for ODBC Drivers error 』80004005』[Microsoft][ODBC Access 97 ODBC driver Driver]General error Unable to open registry key 』DriverId』.

原因:

這個錯誤發生在愛從注冊表中讀取數值的時候。 使用regedit32.exe檢查你的注冊表的許可權。

你也可以使用NT中的注冊表監視程序(NTRegMon)來看讀取失敗信息。 該程序到這找:http://www.sysinternals.com

錯誤信息:

Microsoft OLE DB Provider for ODBC Drivers error 』80004005』[Microsoft][ODBC SQL Server Driver][dbnmpntw]ConnectionOpen (CreateFile()).

原因:

兩個原因:當一個資料庫中包含有分別在不用機器上的許可關系時,

這也可能發生在同一台機器上,當你給一個關系設置了UNC路徑,而另一個關系卻是本地路徑。

錯誤原因是:

當用戶使用IIS匿名帳號登錄後,對本地這台機器而言他是有權的,但是對於一個UNC路徑的機器,另外這台機器是不會認為你當前匿名登錄的帳號在它那上面也是合法的。

這樣它就不允許你訪問它上面的資源,導致錯誤。

兩個解決辦法:

1。在IIS工具中,改變IIS匿名帳號成另外一個基於域的帳號。(也就是不使用匿名登錄)

2。或則在那台你要訪問資源的機器上也創建一個和當前匿名帳號同樣的帳號,使用同樣的密碼。

---------------------------------------------------------------------

錯誤信息

Microsoft OLE DB Provider for ODBC Drivers error 』80004005』 Microsoft][ODBC Microsoft SQL Driver] Logon Failed()

原因:

該錯誤是由SQL Server產生的,當它不接受或則不能夠認識這個登錄帳號的時候,或者沒有使用管理員身份登錄,也可能是在NT中沒有SQL影射帳號造成的。

使用系統管理員帳號(SA)登錄,一般密碼應該為空.注意,這時必須使用CoonectString而不能夠使用DSN文件。

因為DSN中沒有保存用戶名和密碼。

檢查NT是否給SQL映射了帳號。

---------------------------------------------------------------------

錯誤信息

Microsoft OLE DB Provider for ODBC Drivers error 』80004005』[Microsoft][ODBC SQL Server Driver][SQL Server] Login failed- User: Reason: Not defined as a valid user of a trusted SQL Server connection.

原因:

原因同上。

試試這個辦法:在SQL Server的Enterprise Manager中,選擇Server/SQL Server/Configure[ASCII 133]/Security Options/Standard.

如果是運行在IIS4中,取消選擇該項目的Password Synchronization選項。

錯誤信息

Microsoft OLE DB Provider for ODBC Drivers error 』80004005』 [Microsoft][ODBC Microsoft Access 97 Driver] Couldn』t lock file.

原因:

也許是沒有正確的許可權生成Access資料庫的鎖定文件(.ldb)默認時,該文件和你的資料庫是同一個目錄的。給匿名帳號全權訪問資料庫共享目錄的許可權。

有時是因為文件是因為共享時有意使用了只讀的許可權限制。試試使用下面的代碼。

Set Conn = Server.CreateObject("ADODB.Connection")

Conn.Mode = adModeShareDenyWrite 』8

---------------------------------------------------------------------

錯誤信息

Microsoft OLE DB Provider for ODBC Drivers error 』80004005』 [Microsoft][ODBC Microsoft Access 97 Driver] 』(unknown)』 isn』t a valid path. Make sure that the path name is spelled correctly and that you are connected to the server on which the file resides.

原因:

路徑非法。最可能發生在當Global.asa和CoonecntString被使用到另外一台機器上的時候。

---------------------------------------------------------------------

錯誤信息

Microsoft OLE DB Provider for ODBC Drivers error 』80004005』 [Microsoft][ODBC SQL Server Driver][SQL Server] The query and the views in it exceed the limit of 16 tables.

原因:

查詢太復雜了,對查詢有限制。

---------------------------------------------------------------------

錯誤信息:

Microsoft OLE DB Provider for ODBC Drivers error 』80004005』 [Microsoft][ODBC SQL Server Driver][DBMSSOCN] General network error. Check your network document

原因: 當裝有SQL Server的機器改名的時候。但是DSN還使用了原來的機器名。

與iis500內部伺服器錯誤相關的知識