今天在查看電腦裏的圖片時發現了這組圖片,是關於解決安裝IIS後出現HTTP500內部服務器錯誤問題的一組捕捉圖片,應該說我安裝IIS也有好屢次了,每次安裝完後都要出現這個問題,奇怪的是,雖然是同一個問題,但是解決的方法卻各不相同,當時有想寫下來的想法,因此去年在操做的時候把過程捕捉下來了,後來不知怎麼把這事忘記了,既然今天又把它從新翻出來了,那待我好好想想把它寫下來吧。呵呵~因爲時間長了有點忘記當時的操做過程了:
記得當時想在電腦上瀏覽本身作的一個小網站,由於電腦重裝了系統,之前裝好的都沒了,因此必須重裝IIS(那時裝的是5.1版)安裝好後先看了幾個靜態的html網頁,顯示正常,再瀏覽網站文件夾裏index.asp,打開來的是下面(圖1)那個界面,
這是友好提示的http錯誤信息,若是打開IE,選擇工具——internet選項——高級——取消"顯示http友好錯誤提示\"的複選框,網頁會顯示下面的出錯提示:
Server Application Error
The server has encountered an error while loading an application during the processing of your request. Please refer to the event log for more detail information. Please contact the server administrator for assistance.
(大體意思是:服務器應用程序錯誤——該服務器遇到一個錯誤,同時裝載在您的請求處理的申請。請參閱事件日誌的詳細信息。請聯繫服務器管理員求助!)
因而我打開事件查看器,查看日誌見不少MSDTC服務和設備的錯誤,錯誤日誌以下(圖2)
根據在網上資料判斷是賬戶不一樣步引發的,因而按以下步驟來同步密碼:
1)右鍵單擊 個人電腦---->管理---->本地用戶和組---->用戶
右鍵單擊 啓動IIS進程賬號 IWAM_**** (注:****通常是計算機名)點擊設置密碼,設置爲一個你想要的密碼。
2)同步IIS 配置數據庫密碼:
此處命令有二種,一種能夠查看密碼,一種是修改密碼:
a.你能夠利用查看密碼命令查看 IWAM密碼,而後把第一步中用戶IWAM密碼設置爲與 查看到的IIS配置數據庫密碼 同樣
b.也能夠利用修改密碼命令把IIS配置數據庫密碼修改成密碼。
在獲取密碼的時候若是顯示的結果密碼爲「******」應當修改Adsutil.vbs文件,修改方法:在c:\inetpub\adminscripts 找到adsutil.vbs (根據裝系統時設定的不一樣,有的路徑可能不同)以下(圖3)
用記事本打開此文件 查找 IsSecureProperty = True (注意=先後各有一個空格
),將 IsSecureProperty = True 改成 IsSecureProperty = False 保存關閉。 以下(圖4)
而後點擊開始---->運行,輸入cmd回車 打開命令行工具
先輸入 cd c:\inetpub\adminscripts
獲取 IWAM 賬戶密碼命令: cscript.exe adsutil.vbs get w3svc/wamuserpass
獲取 IUSR 賬戶密碼命令: cscript.exe adsutil.vbs get w3svc/anonymoususerpass
輸入以上命令,按回車可分別查看IWAM和IUSR的密碼。
如今來把密碼修改一致:
修改 IWAM 賬戶密碼 cscript.exe adsutil.vbs set w3svc/wamuserpass "password"
修改 IUSR 賬戶密碼 cscript.exe adsutil.vbs set w3svc/anonymoususerpass "password" 以下(圖5)
password 設置爲你想修改的密碼,即與第一步中你設置的用戶IWAM _****的相同,按回車便可修改完成。
這裏必定要注意:w3svc與wamuserpass之間的槓是/而不是\,不然會出錯。
而且還要注意:修改密碼前請必定中止全部的Internet信息服務,不然後面可能會出錯,而且IWAM賬戶可能會被鎖定。
如何中止?打開計算機管理,在Internet信息服務上單擊右鍵,選擇從新啓動IIS服務,在選項中點中止IIS服務,肯定便可。
3)更改組件服務中的密碼
開始--->程序--->附件 打開命令提示符
先輸入 cd c:\inetpub\adminscripts
而後輸入 cscript.exe synciwam.vbs -v
系統會以下(圖6)提示:
而後只要運行了一下iisreset重啓IIS就能夠了。
可是我這裏最後一步提示8004e00f的錯誤,此錯誤是MSDTC服務不正常形成的,解決方法:一、打開控制面板--->管理工具--->組件服務,發現「個人電腦」有向下的紅色小箭頭,再點擊它下面的「com+應用程序」文件夾的時候,提示以下(圖7)
二、進入事件查看器(圖8),打開這4個錯誤日誌來看,發現msdtc服務沒有正常啓動:
4個錯誤日誌詳情以下:
事件類型: 錯誤
事件來源: MSDTC
事件種類: 服務
事件 ID: 4163
日期: 2009-8-20
事件: 13:24:42
用戶: N/A
計算機: xxxxxxx
描述:
找不到 MS DTC 日誌文件。在確認全部由 MS DTC 協調的資源管理器不具備「不肯定」狀態的事務以後,請運行 msdtc -resetlog 建立日誌文件。
有關更多信息,請參閱在 http://go.microsoft.com/fwlink/events.asp 的幫助和支持中心。
事件類型: 錯誤
事件來源: MSDTC
事件種類: 磁盤
事件 ID: 4185
日期: 2009-8-20
事件: 13:24:42
用戶: N/A
計算機: xxxxxxx
描述:
MS DTC 事務管理器啓動失敗。LogInit 返回錯誤 0x2。
有關更多信息,請參閱在 http://go.microsoft.com/fwlink/events.asp 的幫助和支持中心。
事件類型: 錯誤
事件來源: MSDTC
事件種類: 設備
事件 ID: 4112
日期: 2009-8-20
事件: 13:24:42
用戶: N/A
計算機: xxxxxxx
描述:
沒法啓動 MS DTC 事務管理器。
有關更多信息,請參閱在 http://go.microsoft.com/fwlink/events.asp 的幫助和支持中心。
事件類型: 錯誤
事件來源: COM+
事件種類: (98)
事件 ID: 4691
日期: 2009-8-20
事件: 13:24:42
用戶: N/A
計算機: xxxxxxx
描述:
運行時環境沒法初始化支持事務處理組件所需的事務。請確認 MS-DTC 正在運行。(DtcGetTransactionManagerEx(): hr = 0x8004d01b)
有關更多信息,請參閱在 http://go.microsoft.com/fwlink/events.asp 的幫助和支持中心。
三、刪除註冊表中的鍵:點擊開始---->運行---->輸入regedit後肯定打開註冊表編輯器刪除下面三個鍵,路徑以下
· HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MSDTC (圖9)
· HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSDTC (圖10)
· HKEY_CLASSES_ROOT\CID (圖11)
四、中止MSDTC服務:net stop msdtc
五、卸載MSDTC服務:msdtc -uninstall
六、從新安裝MSDTC服務:msdtc -install (圖12)
七、確認在事件查看器中msdtc服務已經正常啓動,這步很關鍵,若是沒有,從新啓動下電腦看看,如今進入組件服務,「個人電腦」上的紅色小箭頭沒有了,能夠打開「com+應用程序」只是打開後沒有看到如下的三個組件:
IIS In-Process Applications (IIS 進程內應用程序)
IIS Out-of-Process Pooled Applications (IIS 進程外應用程序)
IIS Utilities (IIS 實用工具)(圖13)
這是服務器系統中的ASP相關組件(com+組件)出現了問題,我有幾回安裝IIS後發現問題查到這裏看到是一個或二個,沒有完整的三個,既然是不全的,那必須刪除這剩餘的組件,有時會刪除不掉,那須要先將屬性裏的高級中「禁止刪除」的勾選取消後再來刪除。刪除後再打開命令提示符輸入:
「cd %windir%\system32\inetsrv」字符串命令,單擊回車鍵後,再執行
「rundll32 wamreg.dll,CreateIISPackage」命令,接着再依次執行
「regsvr32 asptxn.dll」命令,最後輸入
「iisreset」命令,從新啓動一下計算機操做系統後就可看到完整的com+組件了(圖14)
這也就說明IIS服務器能正確響應ASP腳本,這時再打開管理---->服務和應用程序---->默認網站下打開ASP頁面會發現能夠正常訪問了。
安裝過好屢次IIS,發現操做步驟就是上面這幾個,不過不必定要按上面的順序來,只要能把這幾個步驟都作一遍了,基本上也就能正常瀏覽ASP頁面。(在網上看到關於HTTP 500 內部服務器錯誤的資料不少很雜,看得人頭昏眼花的還沒明白個因此然,因此我把它概括出來但願對你們有所幫助)。