標籤:http 使用 strong 檔案 os 資料
IIS無法啟動,顯示“服務並未即使響應啟動或控制請求”,我用兩種辦法都沒有解決:
1、把IIS卸載重裝也不行;
2、到服務中world wide web publishing服務也不能啟動,提示127錯誤,依存服務都啟動了也不行。
於是就沒辦法了,幾個星期也沒有調試網站。今天上網查了一下找到了一個看上去有些道理的解決的方法:
呵呵,我也遇此問題,懷疑是補丁造成的,由於我們都是在下午打的補丁,然後晚上出問題還原後第一件事是查看IIS沒問題,確定沒問題後就又打補丁,然後IIS又出問題。
我查過了是這個WindowsXP-KB939373-x86-CHS.exe補丁,好像是阻止iis遠程代碼運行什麼的補丁。就是近期剛剛出現的,大面積出現這個問題都是在2007年7月10號以後。
解決:到控制台-加入?/刪除程式,點擊最上邊的“顯示更新”,找到“windows xp 軟體更新”,卸載掉7月10號以後的幾個補丁,World Wide Web Publishing服務便能啟動了。
(注意:卸載的前提是,c盤windows目錄下以$開頭$結尾的目錄沒有刪除掉)
網上其它原因和解決的方法:
1、防火牆規則限制了。
系 統環境是:Windowsxp sp2, IIS5.1。進程無法啟動,這時候當然看看防火牆或是殺毒軟體有沒有相關的進程,"World Wide Web Publishing"的可運行檔案是"inetinfo.exe",在瑞星防火牆訪問規則裡找到"inetinfo.exe"訪問規則設為全部允許存取。再 次啟動"World Wide Web Publishing",然後再啟動IIS,一切OK。
2、沒有使用管理員串連。
系統內容:Windowsxp+sp2,II5.0
故障現象:上午把IIS服務停止以後,程式長時間沒響應,通過工作管理員關閉,啟動時提示“服務沒有及時響應啟動或控制請求”,重新啟動電腦未能解決。
解決的方法:在Internet資訊服務下有本機電腦(電腦機名),單擊名鍵,選擇斷開,提示確實要斷開本機電腦(電腦機名)嗎?選擇確定。
按右鍵Internet,選擇串連,電腦名稱填本機名稱,username填本機管理員帳號(Administrator),確定。
3、依存服務沒有啟動。
昨 天就發現了公司我用這台電腦的IIS啟動不了,今天早上試著解決它,才發現問題並不簡單。找呀找呀找呀,發現 "WorldWideWebPublishing"關閉了,啟動也提示啟動失敗。靜下心來,再看看其它關閉了的服務,有一項Eventlog把它啟動了, 再啟動WorldWideWebPublishing成功。問題就在這裡。
儘管“WorldWideWebPublishing”服務和 SMTP服務的依存關係列表中沒有提到“eventlog”服務,但“eventlog”服務不啟動的話,就會出現上述問題。啟動“eventlog”服 務,然後啟動“WorldWideWebPublishing”服務,上述問題消失。
於是查看World Wide Web Publishing Services所須要依賴的服務(Dependencies),看到是IIS Admin Service。進而發現IIS Admin Service也無法啟動,再查IIS Admin Service的Dependencies,查的結果是Protected Storage和RPC(Remote Procedure Call),於是啟動RPC,接著順利啟動IIS Admin Service,接著啟動World Wide Web Publishing Services,於是IIS恢複正常。
4、IIS中繼資料庫可能壞了。
測試一下。
Try to enumerate metabase:
1. Open a command prompt and change to the C:/Inetpub/Adminscripts folder.
2. At the command line, type "cscript adsutil.vbs enum " (without the
quotation marks).
If this command is successful, it enumerates the settings in the
metabase.
If the command is not successful, you receive the -2146893792
(0x80090020) error code.
假如有備份,把資料回複。
假設沒有,參考
How to Manually Restore the Metabase When No Proper Backup Exists or When
the MMC Does Not Start
http://support.microsoft.com/?id=234429
HOW TO: Download, Install, and Remove the IIS MetaEdit 2.2 Utility
http://support.microsoft.com/?id=232068
有可能是Metabase.bin 或者中繼資料庫壞了,解決的方法參考例如以下
有關怎樣使用 MMC 備份與還原中繼資料庫的資訊,請參見 IIS 讀我檔案,該檔案位於 http://localhost/iishelp/iis/htm/core/iisread.htm#general(假設本機電腦上已安裝產品文檔)。
假設由 MMC 建立的備份檔案可用
下面內容為程式碼:
如 果已使用 MMC 中的“備份”操作建立了一個備份檔案 (FileName.mdBackupNumber),但由於當前的中繼資料庫已損壞而無法開啟 MMC,請運行下面的步驟,以便手動從 FileName.mdBackupNumber 檔案裡還原該中繼資料庫。 1. 停止全部 IIS 服務及其它依賴於 IIS 的服務(比如,第三方應用程式或 Microsoft Site Server)。
注意:要停止 IIS 及其依賴服務,請使用 NET STOP IISADMIN /Y 命令。有關其它資訊,請參見下面 Microsoft 知識庫文章:
236166 (http://support.microsoft.com/kb/236166/) 使用 NET STOP 和 NET START 命令強制 IIS 服務又一次讀取注冊表
2. 使用一個新名稱(如 Metabase.bad)重新命名已損壞的中繼資料庫檔案 Metabase.bin。該檔案位於 %SystemRoot%/System32/Inetsrv 目錄中。
3. 將位於 %SystemRoot%/System32/Inetsrv/Metaback 目錄中的 MMC 備份中繼資料庫檔案 FileName.mdBackupNumber 拷貝到 %SystemRoot%/System32/Inetsrv 目錄中。將該檔案重新命名為 Metabase.bin。
4. 又一次啟動電腦。
假設存在 Metabase.bin 檔案的舊副本
如 果由 MMC 建立的備份檔案不可用,但在其它位置(通常在系統磁帶備份中)存在 Metabase.bin 檔案的舊副本,請運行下面步驟: 1. 停止全部 IIS 服務及其它依賴於 IIS 的服務(比如,第三方應用程式或 Microsoft Site Server)。
注意:要停止 IIS 及其依賴服務,請使用 NET STOP IISADMIN /Y 命令。有關其它資訊,請參見下面 Microsoft 知識庫文章:
236166 (http://support.microsoft.com/kb/236166/) 使用 NET STOP 和 NET START 命令強制 IIS 服務又一次讀取注冊表
2. 使用一個新名稱(如 Metabase.bad)重新命名已損壞的中繼資料庫檔案 Metabase.bin。該檔案位於 %SystemRoot%/System32/Inetsrv 目錄中。
3. 將 Metabase.bin 檔案的舊副本拷貝到 %SystemRoot%/System32/Inetsrv 目錄中。
4. 又一次啟動電腦。
假設不存在 MMC 備份或 Metabase.bin 檔案的舊副本
假設由 MMC 建立的備份檔案不可用,且不存在 Metabase.bin 檔案的舊副本,那麼中繼資料庫的暫時備份可能依舊存在。
在通過 MMC 或其它進程更新中繼資料庫時,可能會建立中繼資料庫的暫時備份。假設更新過程被中斷(原因可能是在第一個位置中有損壞),則該暫時檔案有可能依舊存在。
可 將該暫時檔案命名為 Metabase.bak 或 Metabase.bin.bak,並放到 %SystemRoot%/System32/Inetsrv 目錄中。假設存在該暫時檔案,請運行下面步驟,以嘗試還原中繼資料庫: 1. 停止全部 IIS 服務及其它依賴於 IIS 的服務(比如,第三方應用程式或 Microsoft Site Server)。
注意:要停止 IIS 及其依賴服務,請使用 NET STOP IISADMIN /Y 命令。有關其它資訊,請參見下面 Microsoft 知識庫文章:
236166 (http://support.microsoft.com/kb/236166/) 使用 NET STOP 和 NET START 命令強制 IIS 服務又一次讀取注冊表
2. 使用一個新名稱(如 Metabase.bad)重新命名已損壞的中繼資料庫檔案 Metabase.bin。該檔案位於 %SystemRoot%/System32/Inetsrv 目錄中。
3. 將暫時備份檔案(Metabase.bak 或 Metabase.bin.bak)重新命名為 Metabase.bin。
4. 又一次啟動電腦。
假設不存在中繼資料庫備份檔案
假設沒有可用於中繼資料庫的備份檔案,則還原 IIS 功能的唯一方法是完畢下面操作。但請注意,儲存在中繼資料庫中的全部 IIS 設定都將丟失。 1. 卸載 Windows NT Option Pack。有關其它資訊,請參見下面 Microsoft 知識庫文章:
187870 (http://support.microsoft.com/kb/187870/) 怎樣刪除和又一次安裝 Windows NT 4.0 Option Pack
2. 卸載 Internet Explorer。
3. 從 %SystemRoot/System32/Inetsrv/ 目錄中刪除 Metabase.bin 檔案。
4. 安裝 Internet Explorer。
5. 安裝 Windows NT Option Pack。
(c) Microsoft Corporation 2000,保留全部權利。由 Microsoft Corporation 的 Kevin Zollman 提供。