一提起修改vs03的程式就頭痛,配置個IIS,經常提示 HTTP 500伺服器錯誤,,這是擊傷了。不過經過網上查資料和自己收集一些資料終於解決這個問題。特此我總結一下錯誤的原因和解決的方案,希望協助還沒有解決這個問題的朋友們。
1.先瞭解一下什麼是 HTTP 500伺服器錯誤
500也是屬於HTTP狀態代碼中的一種。前面在經常在網上看到的WordPress SEO最佳化 做404頁面和301重新導向時提到過301和404 HTTP 狀態代碼。
2.導致HTTP-500內部伺服器出錯原因是什嗎?
導致出現http 500錯誤的原因網上有人歸納了很多,最經常碰到的原因可能是網站伺服器在同一時間內的收到的HTTP 要求過多,訪問量過大造成伺服器壓力過大,IIS 伺服器無法及時響應,就會報http 500錯誤。
IIS下出現HTTP 500內部伺服器錯誤的另外一個重要原因是由於iwam帳號的密碼錯誤,iwam帳號在active directory、iis metabase資料庫和com+應用程式中的密碼沒有同步關聯。關於iwam帳號大家可以去google 搜尋看看,這裡不再複製過來了。
其他500錯誤的原因包括參數化時的取值問題;更換了應用伺服器(如tomcat/websphere/jboss等)但啟動並執行指令碼還是原來的,很可能報HTTP500錯誤;
Windows xp2 與IIS組件不相容;系統開發程式問題如有些指標問題沒有處理好;請求操作中需要向資料庫中插入資料在大資料量的情況下導致資料庫中資料表空間已滿,或緩衝池較小無法滿足資料的存取有可能導致HTTP 500錯誤。
3.如何解決HTTP 500錯誤
出現內部伺服器500錯誤時,瀏覽器會返回給使用者一個友好的錯誤提示頁面,也就是開頭我們提到的這段友好錯誤提示。要解決http 500錯誤問題,首先要查到出錯的具體原因。按照這樣的方法步驟來操作:
第一:首先在瀏覽器中設定取消友好提示,以擷取詳細的500錯誤資訊:開啟瀏覽器–選擇工具–internet選項–進階–將/”顯示http友好錯誤提示/”的複選框取消選擇,這樣就可以獲得具體的錯誤提示了。根據500 出錯的具體原因,再進行相應調試解決問題。
第二:如果是IIS 運行環境測試時,由於iwam帳號在active directory、iis metabase資料庫和com+應用程式中密碼不統一導致HTTP 500 – 內部伺服器錯誤,那就要人工同步iwam帳號在active directory、iis metabase資料庫和com+應用程式中的密碼,使之保持一致(虛擬機器主機沒有IIS 伺服器相關許可權的就不能操作了哦,本地測試出現此問題的時候可以這樣進行)。在網上找了一段同步密碼的簡單方法供大家參考
1. 運行:regsvr32 %windir%/system32/vbscript.dll (微軟只提供了管理指令碼adsutil.vbs,位於C:/inetpub/adminscripts子目錄下,因此首先要註冊vbscript.dll)
2. 運行:msdtc -resetlog (msdtc.exe 是微軟分布式傳輸協調程式,該服務用於管理多個伺服器),控制台->管理工具->找到“元件服務”->“電腦”->“我的電腦”->“COM+應用程式”->“IIS Out-Of-Process Pooled Applications”
即:
在開始種允許 cmd
cd %windir%/system32/inetsrv
rundll32 wamreg.dll, CreateIISPackage
regsvr32 asptxn.dll
重啟IIS
3. 重新安裝IIS.
第三:雖然錯誤的原因還有很多很多,但是解決問題的辦法不只一種,在些都是我在配置IIS遇到過的問題,其他的問題可能還有,但是到目前為止,我還沒遇到過,希望遇到過的朋友們能及時的回複訊息我。