A. IIS6.0 IIS7.5應用程序池自動停止怎麼辦
在日誌中發現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'。
4.會不會是默認的程序池出問題了?於是,嘗試新建一個新的程序池.將默認網站的程序池改成新的.但是問題依舊.出現相似的日誌.
事件類型: 錯誤
事件來源: W3SVC
事件種類: 無
事件 ID: 1002
日期: 2008-6-25
事件: 14:17:04
用戶: N/A
計算機: MAIL
描述:
應用程序池 'AppPool #1' 被自動禁用,原因是為此應用程序池提供服務的進程中出現一系列錯誤。
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)。可以使用組件服務管理工具修改此安全許可權。
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_ROOTAppID{剛查到的ID}」
3.右鍵點擊{剛查到的ID},選許可權
4.在許可權設置窗口中點高級,選擇所有者標簽,選中administrators為所有者
5.授予administrators組有讀/寫等所有權 注意:務必不要修改TrustedInstaller的許可權
現在,重新執行組件管理器,可以修改許可權了
B. IIS到底為什麼總是假死
一、原因:IIS應用程序池的設置問題
解決方法:
Internet 信息服務(IIS)管理器->應用程序池->DefaultAppPool->右擊回屬性
二、原答因:獨立進程的 內存堆戔消耗完了,IIS不能創建更多的進程工作空間來處理
解決方法:
1. HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\W3SVC
2.
在Parameters鍵下新建一個DWORD項,名字為:UseSharedWPDesktop 值為1 重啟IIS
三、原因:資料庫連接無法釋放
解決方法:
在連接串里加入以下語句
Pooling=true; MAX Pool Size=512;Min Pool Size=50;Connection Lifetime=30