前邊提到由win2003升級到win2008 server r2 64位系統,然後用了幾個小時配置IIS7.5+PHP+MYSQL等的環境,先是遇到IIS7.5下PHP訪問慢的問題,解決之後又出了新的問題,真是折騰啊!在日誌中發現IIS7.5的應用程式集區自動停止,同時訪問網站提示:HTTP Error 503,The service is unavailable.. 的錯誤,搜遍整個互連網總算是解決了問題。小編也整理了IIS6及IIS7.5遇到此類問題匯總解決方案,歡迎大家嘗試。
關於IIS6的(適於IIS7)解決方案
描述:
iis6應用程式集區被自動禁用問題 Service Unavailable 應用程式集區 'DefaultAppPool' 被自動禁用,原因是為此應用程式集區提供服務的進程中出現一系列錯誤。應用程式-特定 使用權限設定未將 COM 伺服器應用程式(CLSID 為 .............
1.首先是開啟IIS管理器.檢查應用程式集區,果然"DefaultAppPool"出錯了.而且不是平常的停止的表徵圖.
2.試著重啟"DefaultAppPool"應用程式集區,一瀏覽頁面馬上就關閉.
3.到了查看事件記錄的時候了.發現了以下這類的日誌
事件類型: 警告
事件來源: W3SVC
事件種類: 無
事件 ID: 1009
日期: 2008-6-24
事件: 16:12:33
使用者: N/A
電腦: MAIL
描述:
為應用程式集區 'DefaultAppPool' 提供服務的進程意外終止。進程 ID 是 '3160'。進程結束代碼是 '0xffffffff'。
有關更多資訊,請參閱在 http://go.microsoft.com/fwlink/events.asp 的說明及支援中心。
4.會不會是預設的程式池出問題了?於是,嘗試建立一個新的程式池.將預設網站的程式池改成新的.但是問題依舊.出現相似的日誌.
事件類型: 錯誤
事件來源: W3SVC
事件種類: 無
事件 ID: 1002
日期: 2008-6-25
事件: 14:17:04
使用者: N/A
電腦: MAIL
描述:
應用程式集區 'AppPool #1' 被自動禁用,原因是為此應用程式集區提供服務的進程中出現一系列錯誤。
有關更多資訊,請參閱在 http://go.microsoft.com/fwlink/events.asp 的說明及支援中心。
5.再尋找事件記錄另一個日誌引起了我的注意.如下:
事件類型: 錯誤
事件來源: DCOM
事件種類: 無
事件 ID: 10016
日期: 2008-6-24
事件: 16:12:33
使用者: NT AUTHORITY/NETWORK SERVICE
電腦: MAIL
描述:
應用程式-特定 使用權限設定未將 COM 伺服器應用程式(CLSID 為
{A9E69610-B80D-11D0-B9B9-00A0C922E750}
)的 本地 啟用 許可權授予使用者 NT AUTHORITY/NETWORK SERVICE SID (S-1-5-20)。可以使用元件服務管理工具修改此安全許可權。
有關更多資訊,請參閱在 http://go.microsoft.com/fwlink/events.asp 的說明及支援中心。
6.有點戲了.看看CLSID 為 {A9E69610-B80D-11D0-B9B9-00A0C922E750} 是什麼服務先.最後在下面的登錄機碼中找到它:
HKEY_CLASSES_ROOT/AppID/{A9E69610-B80D-11D0-B9B9-00A0C922E750}
7.名字剛好是"IIS Admin Service"
8.好了,找到是什麼了.從"管理工具"中開啟"元件服務",找到IIS Admin Service對比一下CLSID是否一致
9.確定是這個以後,接下來的就是為它增加NETWORK SERVICE許可權了.
A啟動和啟用許可權,點擊"自訂"..
B.在使用者列表中添加"NETWORK SERVICE",
C.並給予本地啟動和啟用許可權,儲存退出.
另外,如果還是有問題,把“IIS wamreg admin SERVICE”也這樣操作一下,右健選擇“屬性”,找到“安全”,在“啟動和啟用許可權”中編輯“自訂”,添加帳號
network service network service 分別給本地啟動和啟用許可權。
2014年2月18日再補充:今日有網友向小編反饋他的解決方案,就是在Windows server 2008 R2 64位下使用PHP5.5.x版本,不用以上設定,也解決了此問題。
到此問題解決。
也有朋友提到,選項無法編輯,為灰色,應該怎麼辦?
這個是win2008 R2 x64的安全特性.一些核心系統組件只能允許本地帳號,TrustedInstaller有完全控制許可權,而不是本機系統管理員群組
要在Windows Server 2008 R2 上修改 “IIS Admin Service” ,你需要授予本機系統管理員群組有註冊表許可權:
1.在組件管理器中查到IIS的appid
2.使用regedit,定位到HKEY_CLASSES_ROOT\AppID\{剛查到的ID}”
3.右鍵點擊{剛查到的ID},選許可權
4.在使用權限設定視窗中點進階,選擇所有者標籤,選中administrators為所有者
5.授予administrators組有讀/寫等所有權 注意:務必不要修改TrustedInstaller的許可權
現在,重新動作項目管理器,可以修改許可權了