我們先來看看iisapp的一些參數
iisapp -a pid
可以查出對應的網域名稱
反之 iisapp -p domain 查pid的文法
iisapp [a/
AppPoolName | /p
AppPoolID]
參數
/a AppPoolName
指定特定應用程式集區的名稱。(可選項)
/p AppPoolID
按 識別碼指定應用程式集區。(可選項)
注釋
如果未指定應用程式集區名或 ID,則 iisapp 列出所有運行應用程式。
僅當使用 /s 時,
才可使用 /u 和 /p 命令列選項。必須同時使用 /p 和 /u 才能提供使用者密碼。
Iisext.vbs 執行 IIS 管理器中可用的相同操作。可使用任何一種工具管理 IIS 網站。
發出命令的電腦必須正在運行 Windows XP 或 Windows Server 2003 作業系統。使用者必須是命令所影響的電腦上的 Administrators 群組成員。
命令所影響的電腦必須是運行帶有 Internet 資訊服務 (IIS) 6.0 的 Windows Server 2003 的伺服器。
說明一下:w3wp.exe為IIS裡面的應用程式集區進程,有幾個進程就會有幾個w3wp.exe,會發現某個w3wp.exe進程CPU和記憶體都高得可怕!
好,那我們來看看具體實踐中該如何解決首先是windows2003
首先開啟windows工作管理員–點擊查看—選擇列–把PID給鉤上!!,,
就可以在進程裡面看到PID的選項了
點擊運行–輸入CMD–輸入iisapp -a—很奇怪,這裡顯示PID的,是用快顯視窗一個個出現的,不知道別人會不,,反正我就是這樣,太不利於查看了!!
注意,希望人BLOG聽說第一次運行,會提示沒有js支援,點擊確定.然後再次運行就可以了.這樣就可以看到pid對應的應用程式集區,這個我就沒測試了!
這樣吧,先再CMD裡面輸入:cd %systemroot%\system32
然後再輸入:cscrIPt.exe iisapp.vbs -a
CMD視窗顯示如下:
W3WP.exe PID: 2488 AppPoolId: AppPool #26
W3WP.exe PID: 3008 AppPoolId: AppPool #2
W3WP.exe PID: 4704 AppPoolId: AppPool #15
W3WP.exe PID: 6388 AppPoolId: AppPool #19
W3WP.exe PID: 6004 AppPoolId: AppPool #8
奇怪的是,我還是彈出了視窗,不過不影響顯示!有了這樣對於就好辦了,!
再工作管理員裡面查看佔用CPU和記憶體過高進程的PID值,就知道是哪一個應用程式集區出了問題,就可以查到具體是什麼網站有問題了!!!
相關資料:
win2000的解決方案
2000下要怎麼辦呢?win2000下不大方便,需要將網站的應用程式保護設定為高,預設是中。
然後開啟管理工具 -> 組件管理,元件服務 — 電腦 — 我的電腦 — com+ 應用程式
選擇查看 -> 狀態查看,就可以看到類似如下的顯示:
名稱 運行 PID
IIS-{www.zoubin.com//Root} 是 2544