今天我在新裝的XP上安裝IIS,結果出現如上所述的問題。打開Html沒有問題,打開ASP文件時就出現“HTTP 500”的錯誤信息。我把“顯示友好HTTP錯誤信息”去掉,再打開ASP文件時出現:
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
出現這樣的情況是主要是由於IWAM賬號(在我的計算機即是IWAM_MYSERVER賬號)的密碼錯誤造成了HTTP 500內部錯誤。
排除了一些基本的可能性外,我在網上搜尋了一下解決辦法。最後終於解決了這個問題,在此分享一下。
先啟動MSDTC服務,什麼是MSDTC服務?顯示名稱:Distributed Transaction Coordinator;描述:協調跨多個數據庫、消息隊列、文件系統等資源管理器的事務。如果停止此服務,則不會發生這些事務。如果禁用此服務,顯式依賴此服務的其他服務將無法啟動。
CMD下net start msdtc
結果顯示“distributed transaction coordinator 服務不能啟動”。
解決方法:
把 C:\Windows\system32\dtclog 這個目錄重命名(如果有的話,沒有就直接省去這一步),然後重新建立該目錄。
在命令行下: msdtc -resetlog
再net start msdtc,顯示服務啟動成功了。
然後右鍵我的電腦--管理--本地用戶和組,給IUSR_機器名和IWAM_機器名兩個用戶設置密碼,要一樣。
接著開始--運行--打cmd,
然後cd C:\Inetpub\AdminScripts,
然後cscript.exe adsutil.vbs set w3svc/wamuserpass 你設置的密碼,
然後cscript.exe adsutil.vbs set w3svc/anonymoususerpass 你設置的密碼。
看一下,行了沒有?如果還不行,那麼
cscript.exe synciwam.vbs -v,
然後IISreset。
到一步還是不行,最後在CMD下執行以下命令:
cd %windir%\system32\inetsrv
rundll32 wamreg.dll, CreateIISPackage
regsvr32 ASPtxn.dll
關閉所有的IE窗口後重新打開再執行,OK了!!