背景:#EDF0F5 #FAFBE6 #FFF2E2 #FDE6E0 #F3FFE1 #DAFAF3 #EAEAEF 默認  
閱讀內(nèi)容

內(nèi)部服務(wù)器錯誤,HTTP 500的一個比較詳細的解釋

[日期:2008-06-20] 來源:  作者:佚名 [字體: ]

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

在詳細分析HTTP500內(nèi)部錯誤產(chǎn)生的原因之前,先對IWAM賬號進行一下簡要的介紹:IWAM賬號是安裝IIS5時系統(tǒng)自動建立的一個內(nèi)置賬號,主要用于啟動進程之外的應(yīng)用程序的I nternet信息服務(wù)。IWAM賬號的名字會根據(jù)每臺計算機NETBIOS名字的不同而有所不同,通用的格式是IWAM_MACHINE,即由“IWAM”前綴、連接線“_ ”加上計算機的NETBIOS名字組成。我的計算機的NETBIOS名字是MYSERVER,因此我的計算機上IWAM賬號的名字就是IWAM_MYSERVER,這一點與I IS匿名賬號ISUR_MACHINE的命名方式非常相似。

IWAM賬號建立后被Active Directory、IIS metabase數(shù)據(jù)庫和COM+應(yīng)用程序三方共同使用,賬號密碼被三方分別保存,并由操作系統(tǒng)負責這三方保存的IWAM密碼的同步工作。按常理說,由操作系統(tǒng)負責的工作我們大可放心,不必擔心出錯,但不知是B UG還是其它什么原因,系統(tǒng)的對IWAM賬號的密碼同步工作有時會失敗,使三方IWAM賬號所用密碼不統(tǒng)一。當IIS或COM+應(yīng)用程序使用錯誤I WAM的密碼登錄系統(tǒng),啟動IIS Out-Of-Process Pooled Applications時,系統(tǒng)會因密碼錯誤而拒絕這一請求,導(dǎo)致IIS Out-Of-Process Pooled Applications啟動失敗,也就是我們在ID10004錯誤事件中看到的“不能運行服務(wù)器{3D14228D-FBE1-11D0-995D-00C04FD919C1} ”(這里{3D14228D-FBE1-11D0-995D-00C04FD919C1} 是IIS Out-Of-Process Pooled Applications的KEY),不能轉(zhuǎn)入IIS5應(yīng)用程序,HTTP 500內(nèi)部錯誤就這樣產(chǎn)生了。

知道了導(dǎo)致HTTP 500內(nèi)部錯誤的原因,解決起來就比較簡單了,那就是人工同步IWAM賬號在Active Directory、IIS metabase數(shù)據(jù)庫和COM+應(yīng)用程序中的密碼。

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

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

因IWAM賬號的密碼由系統(tǒng)控制,隨機產(chǎn)生,我們并不知道是什么,為完成下面兩步的密碼同步工作,我們必須將IWAM賬號的密碼設(shè)置為一個我們知道的值。

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

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

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

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

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

adsutil SET w3svc/WAMUserPass Password

"Password"參數(shù)就是要設(shè)置的IWAM賬號的新的密碼。因此我們將IIS metabase中IWAM_MYSERVER賬號的密碼修改為“Aboutnt2001”的命令就是:

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

修改成功后,系統(tǒng)會有如下提示:

WAMUserPass: (String) "Aboutnt2001"

(見下頁)

12下一頁  GO
推薦 】 【 打印
本文評論       全部評論

發(fā)表評論
  • 尊重網(wǎng)上道德,遵守中華人民共和國的各項有關(guān)法律法規(guī)
  • 承擔一切因您的行為而直接或間接導(dǎo)致的民事或刑事法律責任
  • 本站管理人員有權(quán)保留或刪除其管轄留言中的任意內(nèi)容
  • 本站有權(quán)在網(wǎng)站內(nèi)轉(zhuǎn)載或引用您的評論
  • 參與本評論即表明您已經(jīng)閱讀并接受上述條款


點評: 字數(shù)
姓名:
內(nèi)容查詢