1. 程式人生 > >IIS報Service Unavailable錯的解決方案

IIS報Service Unavailable錯的解決方案

(一)

關於網站顯示Service Unavailable的說明

問:為什麼我們的網站經常會出現“Service Unavailable”(停止服務)的提示,重新整理幾下又可以訪問甚至不能訪問?

答:出現這種情況是由於您的網站超過了系統資源限制造成的,主要是程式佔用資源太多。比如同樣是100人線上的論壇,雷傲論壇所佔的資源就是動網論壇所佔資源的10倍以上;另外,一些死迴圈程式,或者不優化的程式都會佔用太多的系統資源,而系統資源明顯是有限的。由於我們的新虛擬主機是採用WINDOWS2003的作業系統,各網站之間是以獨立程序執行的,不會相互影響。

如果一個網站的程式佔資源太多或者發生太多的錯誤,系統日誌就會提示:“應用程式池 'zccnpool11' 被自動禁用,原因是為此應用程式池提供服務的程序中出現一系列錯誤, 或者提示:應用程式池 'zccn028' 超過了其作業限制設定。有關更多資訊,請參閱在

http://go.microsoft.com/fwlink/events.asp 的幫助和支援中心。這時,訪問這個網站就會提示:Service Unavailable。一般系統會在30秒左右恢復正常,多重新整理幾次就能正常訪問了。但是這個時間恢復後因為訪問量太大在極短的時間網站又不能上了。

另外,如果網站當前訪問人數過多,超過了系統的iis連線數限制(我們空間的iis連線數為100),也會出現Service Unavailable的提示(win2k主機下出現連線過多就會提示:連線過多,請稍後再試;而win2003的主機剛直接提示:Service Unavailable)如果經常出現類似的錯誤,請及時優化網站程式,或者升級你的虛擬主機至更高的款型,以獲得更多的系統資源。



(二)想象中的解決方案

使用 windows 2003 IIS 6的使用者會有 以下的問題:

一直正常的系統,突然有一天有一個網站打不開了
訪問時提示如下:
Service Unavailable
但這個網站並沒有限制IIS連線數。

然後是也影響到了別的網站,不到一會,其他的網站也全變成了
Service Unavailable


這是什麼原因呢?
我們分析後可以知道,還是MS的老問題。ACCESS引擎當了。用伺服器醫生的檔案醫生修復,檢視修復結果時會發現一些檔案引起ACCESS引擎“災難性故障”及“未將物件引用設定到物件的例項”的錯誤。

通過檔案醫生修復後,系統才會恢復正常。

懶漢這時候就可以去百度裡面找   伺服器醫生   去下載了。


(三)根治該問題:

通過檢測,發現我的windows2003的應用程式池被改成DefaultAppPool了!改成原來的MsSharePointAppPool就可以了。

轉載一篇詳細的文章:

瀏覽 Windows SharePoint Services Web 站點時收到“Service Unavailable”(服務不可用)錯誤資訊

症狀
當您瀏覽一個 Windows SharePoint Services Web 站點時,您可能會收到下面的錯誤資訊:
Service Unavailable
原因
如果
microsoft.gif Microsoft
Internet 資訊服務 (IIS) 6.0 中沒有正確地配置用於虛擬伺服器的應用程式池,就可能會發生此問題。此問題可能會在存在下列一種或多種情況時發生: •應用程式池沒有執行。
•應用程式池帳戶使用的密碼不正確。
•應用程式池帳戶不是伺服器上的 IIS_WPG 和 STS_WPG 這兩個組的公共成員。

解決方案
要解決此問題,請按照下列步驟操作: 1.驗證是否已為虛擬伺服器配置了應用程式池。預設的應用程式池是 MSSharePointPortalAppPool。

請按照下列步驟來確定虛擬伺服器正在使用的應用程式池。 a. 單擊“開始”,指向“管理工具”,然後單擊“Internet 資訊服務 (IIS) 管理器”。
b. 展開“ServerName”,展開“Web 站點”,右鍵單擊虛擬伺服器,然後單擊“屬性”。
c. 單擊“主目錄”選項卡。

為虛擬伺服器配置的應用程式池列在“應用程式池”框中。
d. 單擊“確定”。

2.驗證應用程式池帳戶使用的密碼是否正確。IIS 不會自動輪詢 Active Directory 目錄服務中的密碼更改。如果應用程式池帳戶是一個域帳戶,其密碼已過期,則在為此帳戶重新指定一個新密碼後,您可能會收到本文“症狀”部分所描述的錯誤資訊。

請按照下列步驟來驗證應用程式池帳戶所用的密碼是否正確: a. 在 Internet 資訊服務 (IIS) 管理器中,展開“應用程式池”。
b. 右鍵單擊為虛擬伺服器配置的應用程式池(例如,右鍵單擊“MSSharePointPortalAppPool”),然後單擊“屬性”。
c. 單擊“標識”選項卡。
d. 在“密碼”框中,鍵入列在“使用者名稱”框中的應用程式池帳戶所用的密碼,然後單擊“確定”。
e. 在“確認密碼”對話方塊中,再次鍵入密碼,然後單擊“確定”。

3.驗證應用程式池帳戶是伺服器上的 IIS_WPG 組和 STS_WPG 組的成員。

根據您的具體情況選用下列方法之一。 a. 在成員伺服器上安裝了 SharePoint Portal Server 的情況下: 1.單擊“開始”,指向“管理工具”,然後單擊“計算機管理”。
2.展開“本地使用者和組”,然後展開“使用者”。
3.右鍵單擊虛擬伺服器的應用程式池使用的帳戶,然後單擊“屬性”。
4.單擊“成員屬於”選項卡。

驗證 IIS_WPG 和 STS_WPG 是否都出現在“成員屬於”列表中。如果其中之一沒有列出或者兩者均未列出,請根據具體情況將 IIS_WPG 組、STS_WPG 組或者這兩個組新增到列表中。

b. 在域控制器上安裝了 SharePoint Portal Server 的情況下: 1.啟動“Active Directory 使用者和計算機”。
2.展開“使用者”。
3.右鍵單擊虛擬伺服器的應用程式池使用的帳戶,然後單擊“屬性”。
4.單擊“成員屬於”選項卡。

驗證 IIS_WPG 和 STS_WPG 都出現在“成員屬於”列表中。如果其中之一沒有列出或者兩者均未列出,請根據具體情況將 IIS_WPG 組、STS_WPG 組或者這兩個組新增到列表中。


4.重新啟動 IIS 以回收應用程式池: a. 在 Internet 資訊服務 (IIS) 管理器中,右鍵單擊“ServerName”,指向“所有任務”,然後單擊“重新啟動 IIS”。
b. 單擊“在 ServerName 上重新啟動 Internet 資訊服務”,然後單擊“確定”。

============================================================

IIS 6.0 和 Windows Server 2003在網路應用伺服器的管理、可用性、可靠性、安全性、效能與可擴充套件性方面提供了許多新的功能。IIS 6.0同樣增強了網路應用的開發與國際性支援。IIS 6.0和 Windows Server 2003提供了最可靠的、高效的、連線的、完整的網路伺服器解決方案。

  特點 描述

  可靠性與可伸縮性 IIS 6.0提供了更智慧的、更可靠的Web伺服器環境,新的環境包括應用程式健康監測、應用程式自動地迴圈利用。其可靠的效能提高了網路服務的可用性並且節省了管理員用於重新啟動網路服務所花費的時間,IIS 6.0將提供最佳的擴充套件性和強大的效能從而充分發揮每一臺Web伺服器的最大功效。

  更安全、易於管理 IIS 6.0在安全與管理方面做出了重大的改進。安全效能的增強包括技術與需求處理變化兩方面。另外,增強了在安全方面的認證和授權。IIS 6.0的預設安裝是被全面鎖定的,這意味著預設系統的安全係數就被設為最大,它提供的增強的管理效能改善了XML metabase的管理及新的命令列工具。

  伺服器合併 IIS 6.0是一個具有高伸縮性的Web伺服器,它為Web伺服器的合併提供了新的機遇。通過將可靠的體系結構和核心模式驅動程式完美結合在一起,IIS 6.0允許您在單臺伺服器上託管更多的應用程式。伺服器合併還可以降低企業與人工、硬體以及站點管理相關的成本。

  增強的開發與國際化支援 通過Windows Server 2003 與IIS 6.0支援的先進功能如核心模式快取,應用程式開發人員將從Windows Server 2003 與IIS 6.0 單一的、完整的應用平臺環境中受益。基於IIS 6.0,Windows Server 2003為開發者提供高標準的附加功能,包括快速應用程式開發以及廣泛的語言選擇,同時也提供了國際化支援和支援最新的Web標準。

  更高的安全性 IIS 6.0顯著改進了Web伺服器的安全性。IIS 6.0在預設情況下處於鎖定狀態,從而減少了暴露在攻擊者面前的攻擊表面積。此外,IIS 6.0的身份驗證和授權功能也得到了改進。IIS 6.0還提供了更多更強大的管理功能,改善了對XML元資料庫(metabase)的管理,並且提供了新的命令列工具。IIS 6.0在降低系統管理成本的同時,大大提高了資訊系統的安全性。

  Web伺服器更高的可靠性和可用性

  IIS 6.0已經經過了廣泛的重新設計,以提高Web伺服器的可靠性和可用性。新的容錯程序架構和其它功能特性可以幫助使用者減少不必要的停機時間,並提高應用程式的可用性。

  功能特性 描述

  容錯程序架構 IIS 6.0的容錯式程序架構將Web站點和應用程式隔離到一個自包含的單元之中(又稱應用程式池)。應用程式池為管理員管理一組Web站點和應用程式提供了便利,同時提高了系統的可靠性,因為一個應用程式池中的錯誤不會引起另外一個應用程式池或者伺服器本身發生故障。

  健康狀況監視 IIS 6.0定期檢查應用程式池的狀態,並自動重新啟動應用程式池中發生故障的Web站點或應用程式,從而提高了應用程式的可用性。通過自動禁用在短時間內頻繁發生故障的Web站點和應用程式,IIS 6.0可以保護伺服器和其它應用程式的安全。

  自動程序回收 IIS 6.0可以根據一組靈活的標準和條件——例如CPU利用率和記憶體佔用情況,自動停止和重新啟動發生故障的Web站點和應用程式,同時將請求放入佇列。IIS 6.0還可以在回收一個工作程序時對客戶機的TCP/IP連線加以維護,將Web服務客戶端應用程式與後端不穩定的Web應用程式隔離開來。

  快速的故障保護 如果某個應用程式在短時間內頻繁發生故障,IIS 6.0將自動禁用該程式,並且向所有新發出和排入佇列的針對該應用程式的請求返回一個“503服務不可用”錯誤資訊。例如,此外,還可以觸發某些定製操作,例如觸發一個除錯操作或者向管理員發出通知。快速故障保護可以保護Web伺服器免遭拒絕服務攻擊。

  更加輕鬆的伺服器管理

  藉助IIS 6.0,Web基礎結構的管理工作變得比以往更加輕鬆和靈活,從而為企業節約IT管理成本帶來了新的機遇。

  功能特性 描述

  基於XML的配置檔案 IIS 6.0中XML格式的純文字元資料庫(metabase)為發生故障的伺服器帶來了經過改進的備份和恢復功能。此外,它還提供了得到改進的故障處理和元資料庫損壞恢復。使用常見的文字編輯工具對其進行直接編輯提供了更為出色的可管理性。

  執行程式的同時對其進行編輯 在伺服器保持執行的同時,IIS 6.0允許管理員對伺服器配置做出各種修改。例如,管理員可以使用該特性新增一個新的站點,建立虛擬目錄,或者修改應用程式池和工作程序的配置——所有這些都是在IIS 6.0繼續處理請求的同時發生的,並且無需進行重新編譯或者重新啟動伺服器。

  基於命令列和指令碼的管理 IIS 6.0的管理員可以使用Windows Server 2003的命令列工具完成很多常見的管理工作。利用一個簡單的命令,管理員即可管理多個本地或遠端計算機。IIS 6.0還提供了一個完整的指令碼環境,以在不使用圖形使用者介面的情況下,從命令列自動完成多種常見的管理任務。

  對WMI的支援 IIS 6.0全面支援Windows Management Instrumentation(Windows管理規範,WMI), Web管理員可以通過它獲取重要的企業管理資料,例如效能計數器和配置檔案。WMI的介面從本質上說類似於繼續享受支援的Microsoft Active Directory® Service Interfaces(ADSI),可以在管理指令碼中使用,並且可以用來修改基於XML的配置元資料庫。

  伺服器合併

  和先前版本相比,IIS 6.0的效能已經得到了極大的提高,現在,單臺伺服器即可託管更多的站點和應用程式。

  功能特性 描述

  站點伸縮性 IIS 6.0改進了作業系統使用內部資源的方法。例如,在初始化過程中,IIS 6.0不會預先分配資源。通過執行IIS 6.0,您可以在單臺伺服器上管理更多的站點和併發執行更多的工作程序。和IIS的先前版本相比,伺服器的啟動和關閉過程更加快捷。所有這些改進都使得IIS 6.0能夠以更大的伸縮性對站點進行管理.

  新的核心模式驅動程式,HTTP.sys Windows Server 2003引入了一種新的核心模式驅動程式,即HTTP協議堆疊(HTTP.sys),並使用它進行HTTP的解析和快取,從而大大提高了系統的伸縮性和效能表現。IIS 6.0便建立在HTTP.sys的基礎之上,並且針對提高Web伺服器的吞吐量這一目的進行了特別的優化和調整。

  Web園 IIS 6.0的工作程序隔離模式還允許多個工作程序被配置到針對某個給定應用程式池的服務請求上,這種配置又被稱作Web園(Web garden)。

  處理器關聯 如果設定了處理器關聯,IIS 6.0的工作程序便可以執行在指定的 微處理器或CPU上。處理器關聯還可以和執行在多處理器計算機之上的Web園配合使用,在這些計算機上,CPU群集專門共指定的應用程式池使用。

  更快捷的應用程式開發

  通過提供一組全面完善的整合化應用程式服務和領先於業界的工具,Windows Server 2003應用程式環境大大改善了開發人員的工作效率和生產力。

  功能特性 描述

  ASP.NET和IIS的整合 通過將ASP.NET和IIS整合在一起,Windows Server 2003提供了更為美妙的開發體驗。Windows Server 2003的各種增強建立在IIS 6.0的基礎之上,為開發人員提供了高水平的功能特性,例如快速應用程式開發(RAD)和廣泛靈活的語言選擇。在Windows Server 2003中,使用ASP.NET和.NET Framework的得到了進一步優化,因為用來處理請求的體系架構與IIS 6.0緊密整合在一起。

  Microsoft .NET Framework Microsoft .NET Framework允許開發人員在ASP.NET和其它技術的幫助下建立優秀的Web應用程式。此外,它還可以幫助他們開發與他們目前正在設計和開發的應用程式完全相同的程式。.NET Framework和語言無關;實際上您可以使用任何語言為它開發程式。開發人員可以使用各種語言構建基於.NET的應用程式和服務,包括: Microsoft Visual C++® .NET、Visual Basic® .NET、JScript®以及Visual C# .NET。

  XML Web 服務 IIS 6.0提供了一個高效能的XML Web服務平臺。XML Web服務為使用者遠端訪問伺服器功能提供了手段。通過使用Web服務,企業可以將程式設計介面暴露給他們的資料或業務邏輯,也可以通過客戶端和伺服器應用程式獲得和操縱這些資料和業務邏輯。

  跨越組織地理邊界的資訊共享 跨越組織的地理邊界使用各種語言進行資訊共享正在經濟全球化浪潮中發揮越來越大的作用。過去,HTTP協議的非Unicode結構將開發人員限制在系統內碼表上。現在,利用經過UTF-8(UCS Transformation Format 8)編碼的URL ,Unicode成為了可能,它帶來的好處之一便是:人們可以支援更復雜的語言了,例如中文。IIS 6.0允許使用者使用Unicode訪問伺服器變數。此外,它還添加了新的伺服器支援函式,允許開發人員訪問以Unicode形式表述的URL地址,因此改善了產品的國際化支援能力。

  更高的安全性

  IIS 6.0遠比IIS 4x 或 IIS 5x安全,它擁有很多新的功能特性,能夠大大提高您的Web基礎結構的安全性。此外,在預設狀況下,IIS 6.0即處於“鎖定”狀態,同時具有最為可靠的超時設定和內容限制。

  功能特性 描述

  鎖定伺服器 IIS 6.0在安全性方面進行了很大的加強。為了減少系統向外界暴露的攻擊表面積,IIS 6.0預設情況下不會安裝在Windows Server 2003之中——管理員必須明確地選擇該元件並安裝它。IIS 6.0預設即處於鎖定狀態下,並僅僅能夠為使用者提供靜態內容。通過使用Web服務擴充套件節點,Web站點的管理員可以根據組織的特殊需要,啟用或禁用某些IIS功能。

  Web服務擴充套件列表 預設情況下的IIS安裝不會編譯、執行或者提交任何動態頁面。為了向用戶提供這些檔案,您必須在Web服務擴充套件列表中新增每個允許提交的副檔名。這種做法可以防止某些人呼叫一些不夠安全的動態頁面。

  預設的低許可權賬戶 所有IIS 6.0的工作程序預設情況下都使用“網路服務”使用者賬戶執行,這個在Windows Server 2003中新增加的賬戶型別是一種擁有有限作業系統許可權的內建賬戶。所有的ASP內建功能都使用低許可權賬戶(匿名使用者)在系統中執行。

  授權 IIS 6.0對Windows Server 2003內建的新的授權框架進行了進一步的擴充套件。此外,Web應用程式可以使用URL授權——以及授權管理器(Authorization Manager)——對使用者的訪問加以控制。現在,受約束的委派授權使得域管理員只能向特定的計算機和服務進行委派操作。

  總結

  IIS 6.0 與Windows Server 2003為網路應用伺服器的管理提供了許多新的特性,包括實用性、可靠性、安全性與可擴充套件性。IIS 6.0也增強了開發和國際化支援,Windows Server 2003和IIS 6.0為您提供了一整套最可靠、高效、連線的一體化網路應用解決方案。

  回答者:靚的就是你 - 舉人 四級 4-27 12:43

  管理員和Web應用程式開發者要求一個快速、可靠的Web平臺,並且是安全和可擴充套件的。Internet 資訊服務(IIS)6.0和微軟Windows Server 2003 為網路應用程式伺服器管理引入了許多新的特徵;更強的效能和擴充套件性;高效性,高可靠性和安全性。進行了許多重大的結構改進以滿足客戶需求。

  IIS 6.0 提供廣泛的新特性和技術和使它更為可靠、可擴充套件和安全、可管理,加強了對開發提供的技術特性支援。

  IIS6.0增強了安全性,為了儘量減少系統被攻擊的危險,在預設情況下IIS6.0是不會被安裝在Windows Server 2003中的,管理員需要手動進行安裝,IIS6.0在被鎖定狀態中只為靜態內容(.htm,.jpg.bmp等等)提供服務,通過網路服務擴充套件節點,網站管理員可根據企業的需求起用或禁止IIS功能。

  越來越多的客戶在一個Web伺服器上跑多個應用程式或者多個站點,這對如今的Web伺服器無疑提出了特定的需求,如果一個ISP在同一伺服器上有兩個公司的站點甚至互相爭奪資源,那麼他必須保證隔離兩個應用程式相互獨立執行,更為重要的是——他必須確保一個有惡意的應用程式管理員無法訪問其它應用程式的資料,完全隔離是絕對必要的。IIS6.0可以通過配置工作程序驗證實現這個級別的隔離。此外,IIS6.0還可以通過一些如控制頻寬、分配CPU執行緒或者基於記憶體的回覆功能來製造環境,讓同一伺服器執行競爭激烈的多個應用程式。