AppCmd.exe工具所在目錄 C:\windows\sytstem32\inetsrv\目錄下
使用命令行管理IIS 7.0時(shí),需要使用IIS7.0提供的全新管理工具AppCmd.exe。AppCmd.exe工具可以完成web服務(wù)器的全不管理工作。利用AppCmd.exe工具,既可以通過(guò)命令行提示完成掛歷工作,也可以通過(guò)腳本完成管理工作。利用AppCmd.exe工具,可以完成以下工作:
1、添加、刪除、修改web網(wǎng)站和應(yīng)用程序池
2、停止,啟動(dòng)web網(wǎng)站和應(yīng)用程序池
3、觀察工作進(jìn)程和請(qǐng)求信息
4、一列表形式顯示IIS和ASP.NET的配置信息,并支持對(duì)IIS和ASP.NET的配置信息進(jìn)行修改
AppCmd.exe工具提供了一個(gè)一直的命令集,利用該命令集,針對(duì)受支持的對(duì)象類(lèi)型,可以執(zhí)行查詢(xún)操作并完成一些其他任務(wù),既可以段杜運(yùn)行這些命令,也可以講命令進(jìn)行組合并欲行命令組合,從而可以執(zhí)行復(fù)雜的任務(wù),完成復(fù)雜的查詢(xún)工作,如表:
對(duì)象名稱(chēng) | 描述 |
site | 管理虛擬網(wǎng)站 |
app | 管理應(yīng)用程序 |
vdir | 管理虛擬目錄 |
appool | 管理應(yīng)用程序池 |
config | 掛歷通用配置文件 |
wp | 掛歷工作進(jìn)程 |
request | 管理http請(qǐng)求 |
module | 管理服務(wù)器模塊 |
backup | 管理服務(wù)器配置備份 |
trace | 管理失效請(qǐng)求跟蹤日志 |
AppCmd.exe工具支持的命令:
add
clear
configure
delete
inspect
install
list
lock
migrate
recycle
reset
restore
search
set
start
stop
uninstall
unlock
AppCmd命令
溫馨提示:命令總是位于對(duì)象之前,而屬性總是位于對(duì)象之后,這樣就可以通過(guò)創(chuàng)建一個(gè)類(lèi)似于一條語(yǔ)句的結(jié)構(gòu),在這個(gè)結(jié)構(gòu)中,appcmd.exe通知對(duì)象做某事。
list 列出應(yīng)用程序池
set 配置應(yīng)用程序池
add 添加新應(yīng)用程序池
delete 刪除應(yīng)用程序池
start 啟動(dòng)應(yīng)用程序池
stop 停止應(yīng)用程序池
recycle 回收應(yīng)用程序池
1、列出一個(gè)對(duì)象所有實(shí)例
appcmd.exe list app
2、列出獨(dú)一無(wú)二的對(duì)象實(shí)例
appcmd.exe list app "Default Web Site/"
3、列出滿(mǎn)足一定準(zhǔn)則的對(duì)象實(shí)例
appcmd.exe list app /apppool.name:"defaultapppool"
4、列出對(duì)象的詳細(xì)信息
appcmd.exe list app "default web site/"/text:*
5.列出所有XXX應(yīng)用程序池的應(yīng)用程序
appcmd.exe list app /text:/apppool.name:XXX
6、列出網(wǎng)站的配置信息
appcmd.exe list site "default web site "/config
7、更換應(yīng)用程序池
appcmd.exe set app "default web site/" /applicationpool:"XXX"
8、添加新的應(yīng)用程序池
appcmd.exe add apppool /name:"XXX"
9、刪除應(yīng)用程序池
appcmd.exe delete apppool /apppool.name:"XXX"
10、列出所有的應(yīng)用程序池的詳細(xì)信息
appcmd.exe list apppool
11、查詢(xún)所有應(yīng)用程序池狀態(tài)為started的
appcmd.exe list apppools /state:started
12、關(guān)閉指定應(yīng)用程序池
appcmd.exe stop appPool /appPool.name:"XXX"
13、開(kāi)啟指定應(yīng)用程序池
appcmd.exe start apppool /apppool.name:"XXX"
14、監(jiān)視當(dāng)前的請(qǐng)求
appcmd.exe list request
request對(duì)象可以使用屬性來(lái)找到特定的信息,通過(guò)使用屬性,可以返回摸個(gè)運(yùn)行時(shí)間(以毫秒計(jì)算)超過(guò)預(yù)設(shè)值的網(wǎng)站、應(yīng)用程序池、工作進(jìn)程、URL, 以及請(qǐng)求的信息。request對(duì)象所使用的屬性包括:
基于網(wǎng)站ID的請(qǐng)求
appcmd.exe list request /site.id:1
基于應(yīng)用程序池的請(qǐng)求
appcmd.exe list request /apppool.exe:DefaultAppPool
基于工作進(jìn)程的請(qǐng)求
appcmd.exe list request /wp.name:"1044"
基于網(wǎng)站名稱(chēng)的請(qǐng)求
appcmd.exe list request /site.name:"Default web Site"
基于進(jìn)程運(yùn)行時(shí)間的請(qǐng)求
appcmd.exe list request /elapsed:"1000"
15.站點(diǎn)備份與恢復(fù)
備份站點(diǎn):
appcmd.exe add backup backupname
列出備份:
appcmd.exe list backup
恢復(fù)備份
在恢復(fù)一個(gè)備份時(shí),IIS停止運(yùn)行,并且重寫(xiě)服務(wù)器的狀態(tài)。一旦配置文件被重寫(xiě),IIS隨即重新啟動(dòng)。如果不希望IIS停止運(yùn)行并重新啟動(dòng),那么可以是使用/stop:false。這樣,就可以在合適的時(shí)間手動(dòng)停止IIS運(yùn)行,并手動(dòng)重新啟動(dòng)IIS
appcmd.exe restore backup /back.name:"XXX" /stop:false
appcmd.exe restore backup /backup.name:"XXX"
刪除備份
appcmd.exe relete backup XXX
16、列出服務(wù)器的整體配置信息
appcmd.exe list config
列出默認(rèn)Web網(wǎng)站的配置
appcmd.exe list config "Default Web Site/"
當(dāng)需要顯示默認(rèn)web網(wǎng)站的配置內(nèi)容時(shí),為了減少顯示內(nèi)容,可以執(zhí)行
appcmd.exe list config "Defaul Web Site/" /section:system.net/settings
獲取所有可用節(jié)點(diǎn)
appcmd.exe list config -section:?
17、編輯配置節(jié)點(diǎn)信息
eg1: 啟用全局IPv6
appcmd.exe set config /section:system.net/settings -ipv6.enabled:"true"
eg2:在全局配置中啟用了IPv6,現(xiàn)在要在默認(rèn)的web中引用IPv6
appcmd.exe set config "http://localhost" /section:system.net/settings -ipv6.enabe:"false"
列出節(jié)點(diǎn)集合
appcmd.exe list config /section:httpErrors
編輯節(jié)點(diǎn)集合
eg:把401錯(cuò)誤頁(yè)面有"401。htm"修改為"defaulterror.htm"
通過(guò)使用加號(hào)(+)或者一個(gè)減號(hào)(-)添加 活刪除元素
刪除503狀態(tài)碼
appcmd.exe set config /section:httpErrors /-[statusCode='503']
appcmd.exe set config /section:httpErrors / [statusCode='401'].path:defaulterror.htm
18、對(duì)配置進(jìn)行加鎖和解鎖
解鎖:
appcmd.exe unlock config "default web site" /section:system.web/authentication
加鎖:
appcmd.exe lock config "default web site" /section:system.web/authentication
19、使用管道傳送XML數(shù)據(jù)
可以在appcmd list 中使用/xml修飾符來(lái)創(chuàng)建復(fù)雜的任務(wù),還可以執(zhí)行大規(guī)模的批處理工作。利用/xml修飾符,可以講一個(gè)查詢(xún)的結(jié)果導(dǎo)出并保存到一個(gè)標(biāo)準(zhǔn)XML格式的文件中,從而使其他命令行工具或者shell命令可以使用這個(gè)XML文件。例如,為了列出所有已啟用的應(yīng)用程序池,并將信息保存到一個(gè)標(biāo)準(zhǔn)的XML文件中,執(zhí)行以下命令:
appcmd.exe list apppool /state:started /xml