複製鏈接
請複製以下鏈接發送給好友

Service Unavailable

鎖定
Service Unavailable 是一種系統的警告提示。如果一個網站的程序佔資源太多或者發生太多的錯誤,系統日誌就會提示:“應用程序池 'xxx' 被自動禁用,原因是為此應用程序池提供服務的進程中出現一系列錯誤,或者提示:應用程序池 'xxx' 超過了其作業限制設置。這時,訪問這個網站就會提示:Service Unavailable。一般系統會在30秒左右恢復正常,多刷新幾次就能正常訪問了。
中文名
系統警告提示
外文名
Service Unavailable
產生原因
程序佔資源太多或者太多的錯誤
解決方法
刷新

Service Unavailable出現原因

Service Unavailable的出現一般是資源不足,如IIS、CPU或內存等,極少數情況下會因asp 、.net和php程序錯誤導致出現。
一般情況下為多個站共用一個程序池,這個程序池可以簡單理解為資源庫,即這些站點共用這塊資源;內存限制為500M物理內存(服務器為8G內存)。
如果這個資源被其中一個站用完,則程序池就會停止,所有使用這個程序池的站就會出現“Service Unavailable”的提示,直到該程序池被重新啓動。
大多數情況下,500M內存完全足夠使用;如果出現垃圾程序或遇到攻擊,則可能出現CPU急速上升或內存大量使用,這是大部分“Service Unavailable”出現的原因。從我們監測的情況看,大部分是CPU佔用在90%-100%之間出現的。

Service Unavailable解決方法

刷新幾下又可以訪問
如果出現“Service Unavailable”的提示,刷新幾下又可以訪問。
出現這種情況是由於您的網站超過了iis限制造成的由於2003的操作系統在提示IIS過多時並非像2000系統提示“鏈接人數過多”,而是提示"Service Unavailable",出現這種情況是由於網站超過了系統資源限制造成的,主要是程序佔用資源太多。
一些死循環程序,或者不優化的程序都會佔用太多的系統資源,而系統資源明顯是有限的。不過WINDOWS2003的操作系統,各網站之間是以獨立進程運行的,不會相互影響。
另外,如果你的網站當前訪問人數過多,超過了系統的iis連接數限制,也會出現Service Unavailable的提示(win2k主機下出現連接過多就會提示:連接過多,請稍後再試;而win2003的主機剛直接提示:Service Unavailable)
沒有限制IIS連接
沒有限制IIS連接,還是遭遇Service Unavailable
多見於使用ACCESS數據庫的網站,一般使用windows 2003 IIS 6的用户可能這個問題一直正常的系統,突然有一個網站打不開了提示: Service Unavailable 但這個網站並沒有限制IIS連接數。然後馬上影響到了別的網站,不到一會,其他的網站也全變成了 Service Unavailable 這是什麼原因呢?
我們分析後可以知道,還是MS的老問題。ACCESS引擎當了。用服務器醫生的文件醫生修復,查看修復結果時會發現一些文件引起ACCESS引擎“災難性故障”及“未將對象引用設置到對象的實例”的錯誤。 通過文件醫生修復後,系統才會恢復正常。
瀏覽一個Web站點時
瀏覽一個 Windows SharePoint Services Web 站點時,提示:Service Unavailable
Microsoft Internet 信息服務 (IIS) 6.0 中沒有正確地配置用於虛擬服務器的應用程序池,就可能會發生此問題。

Service Unavailable解決方案

要解決此問題,按照下列步驟操作:
1、驗證是否已為虛擬服務器配置了應用程序池。默認的應用程序池是 MSSharePointPortalAppPool。
請按照下列步驟來確定虛擬服務器正在使用的應用程序池。
(a). 單擊“開始”,指向“管理工具”,然後單擊“Internet 信息服務 (IIS) 管理器”。
(b). 展開“ServerName”,展開“Web 站點”,右鍵單擊虛擬服務器,然後單擊“屬性”。
(c). 單擊“主目錄”選項卡。 為虛擬服務器配置的應用程序池列在“應用程序池”框中。
(d). 單擊“確定”。
2、驗證應用程序池帳户使用的密碼是否正確。IIS 不會自動輪詢 Active Directory 目錄服務中的密碼更改。如果應用程序池帳户是一個域帳户,其密碼已過期,則在為此帳户重新指定一個新密碼後,您可能會收到本文“症狀”部分所描述的錯誤信息。
3、 驗證應用程序池帳户是服務器上的 IIS_WPG 組和 STS_WPG 組的成員。
4.、重新啓動 IIS 以回收應用程序池
沒有正確加載ISAPI篩選器
ISAPI篩選器沒有加載成功的話會造成任意網站一訪問就出現Service unavailable,這個時候需要根據加載失敗的原因解決,或者刪除該ISAPI篩選器

Service Unavailable整理資料

原因一:網站超過了IIS連接數
解決辦法一:增加IIS連接數
備註一:Windows 2003的操作系統在提示IIS過多時並非像win2000系統提示“鏈接人數過多”,而是提示"Service Unavailable"
原因二:網站超過了IIS資源限制
解決辦法二:增加網站的資源
備註二:Winodws2003中網站佔用了超過IIS對該網站系統資源的限制後直接提示"Service Unavailable"
原因三:網站的程序發生太多的錯誤
解決辦法三:修改程序錯誤
備註三:Winodws2003中網站錯誤太多,就會造成該網站所在的應用程序池出錯,這個時候可以在Windows2003的日誌中看到“應用程序池 'xxx' 被自動禁用,原因是為此應用程序池提供服務的進程中出現一系列錯誤”,這個時候網站就會直接顯示"Service Unavailable"
以上三個原因造成的"Service Unavailable",一般現象是出現"Service Unavailable"後,多刷新幾次,就可以打開。
原因四:ACCESS引擎錯誤
解決辦法四:重啓IIS
備註四:有一些文件造成了ACCESS數據庫出現“災難性故障”及“未將對象引用設置到對象的實例”的錯誤
原因四造成的"Service Unavailable",現象是所有該服務器上的使用Access數據庫的網站都出現錯誤,不能訪問。
以上四個原因是常見的造成了"Service Unavailable"的原因,其他還有一些問題造成了該問題,基本只要IIS重啓一下就可以的。
Service Unavailable的第五種原因就是今天的原因了:ISAPI篩選器沒有正常加載
出現這種情況也有可能是他人非法攻擊,導致網站流量過大·
如果超出CPU 也會出現這個提示的.
原因六:80端口被其它程序佔用了。這是個非常隱蔽的原因,如果僅僅在IIS上所有網站都Service Unavailable,並且查看一個簡單的html頁都發“應用程序池 'xxx' 被自動禁用”錯誤,那麼在控制枱中執行命令"netstat -a -n -o",看看佔用80端口的是哪個程序。如果您安裝了迅雷,請尤其注意這點,迅雷在默認情況下是要和IIS搶80端口的。