IIS命令行管理工具使用
AppCmd.exe工具所在目录 C:\windows\sytstem32\inetsrv\目录下
一条命令批量添加应用程序
c:\Windows\System32\inetsrv>for /d %i in (e:\wwwroot\*.*) do appcmd add app /site.name:"Default Web Site" /path:/%~ni /physicalpath:%i
appcmd add app /site.name:"Default Web Site" /path:webview/physicalpath:E:\wwwroot\webview
使用命令行管理IIS 7.0时,需要使用IIS7.0提供的全新管理工具AppCmd.exe。AppCmd.exe工具可以完成web服务器的全不管理工作。利用AppCmd.exe工具,既可以通过命令行提示完成挂历工作,也可以通过脚本完成管理工作。利用AppCmd.exe工具,可以完成以下工作:
1、添加、删除、修改web网站和应用程序池
2、停止,启动web网站和应用程序池
3、观察工作进程和请求信息
4、一列表形式显示IIS和ASP.NET的配置信息,并支持对IIS和ASP.NET的配置信息进行修改
AppCmd.exe工具提供了一个一直的命令集,利用该命令集,针对受支持的对象类型,可以执行查询操作并完成一些其他任务,既可以段杜运行这些命令,也可以讲命令进行组合并欲行命令组合,从而可以执行复杂的任务,完成复杂的查询工作,如表:
对象名称描述
site管理虚拟网站
app管理应用程序
vdir管理虚拟目录
appool管理应用程序池
config挂历通用配置文件
wp挂历工作进程
request管理http请求
module管理服务器模块
backup管理服务器配置备份
trace管理失效请求跟踪日志
AppCmd.exe工具支持的命令:
add
clear
configure
delete
inspect
install
list
lock
migrate
recycle
reset
restore
search
set
start
stop
uninstall
unlock
AppCmd命令
温馨提示:命令总是位于对象之前,而属性总是位于对象之后,这样就可以通过创建一个类似于一条语句的结构,在这个结构中,appcmd.exe通知对象做某事。
list 列出应用程序池
set 配置应用程序池
add 添加新应用程序池
delete 删除应用程序池
start 启动应用程序池
stop 停止应用程序池
recycle 回收应用程序池
1、列出一个对象所有实例
appcmd.exe list app
2、列出独一无二的对象实例
appcmd.exe list app "Default Web Site/"
3、列出满足一定准则的对象实例
appcmd.exe list app /apppool.name:"defaultapppool"
4、列出对象的详细信息
appcmd.exe list app "default web site/"/text:*
5.列出所有XXX应用程序池的应用程序
appcmd.exe list app /text:/apppool.name:XXX
6、列出网站的配置信息
appcmd.exe list site "default web site "/config
7、更换应用程序池
appcmd.exe set app "default web site/" /applicationpool:"XXX"
8、添加新的应用程序池
appcmd.exe add apppool /name:"XXX"
9、删除应用程序池
appcmd.exe delete apppool /apppool.name:"XXX"
10、列出所有的应用程序池的详细信息
appcmd.exe list apppool
11、查询所有应用程序池状态为started的
appcmd.exe list apppools /state:started
12、关闭指定应用程序池
appcmd.exe stop appPool /appPool.name:"XXX"
13、开启指定应用程序池
appcmd.exe start apppool /apppool.name:"XXX"
14、监视当前的请求
appcmd.exe list request
request对象可以使用属性来找到特定的信息,通过使用属性,可以返回摸个运行时间(以毫秒计算)超过预设值的网站、应用程序池、工作进程、URL, 以及请求的信息。request对象所使用的属性包括:
基于网站ID的请求
appcmd.exe list request /site.id:1
基于应用程序池的请求
appcmd.exe list request /apppool.exe:DefaultAppPool
基于工作进程的请求
appcmd.exe list request /wp.name:"1044"
基于网站名称的请求
appcmd.exe list request /site.name:"Default web Site"
基于进程运行时间的请求
appcmd.exe list request /elapsed:"1000"
15.站点备份与恢复
备份站点:
appcmd.exe add backup backupname
列出备份:
appcmd.exe list backup
恢复备份
在恢复一个备份时,IIS停止运行,并且重写服务器的状态。一旦配置文件被重写,IIS随即重新启动。如果不希望IIS停止运行并重新启动,那么可以是使用/stop:false。这样,就可以在合适的时间手动停止IIS运行,并手动重新启动IIS
appcmd.exe restore backup /back.name:"XXX" /stop:false
appcmd.exe restore backup /backup.name:"XXX"
删除备份
appcmd.exe relete backup XXX
16、列出服务器的整体配置信息
appcmd.exe list config
列出默认Web网站的配置
appcmd.exe list config "Default Web Site/"
当需要显示默认web网站的配置内容时,为了减少显示内容,可以执行
appcmd.exe list config "Defaul Web Site/" /section:system.net/settings
获取所有可用节点
appcmd.exe list config -section:?
17、编辑配置节点信息
eg1: 启用全局IPv6
appcmd.exe set config /section:system.net/settings -ipv6.enabled:"true"
eg2:在全局配置中启用了IPv6,现在要在默认的web中引用IPv6
appcmd.exe set config "" /section:system.net/settings -ipv6.enabe:"false"
列出节点集合
appcmd.exe list config /section:httpErrors
编辑节点集合
eg:把401错误页面有"401。htm"修改为"defaulterror.htm"
通过使用加号(+)或者一个减号(-)添加 活删除元素
删除503状态码
appcmd.exe set config /section:httpErrors /-[statusCode='503']
appcmd.exe set config /section:httpErrors / [statusCode='401'].path:defaulterror.htm
18、对配置进行加锁和解锁
解锁:
appcmd.exe unlock config "default web site" /section:system.web/authentication
加锁:
appcmd.exe lock config "default web site" /section:system.web/authentication
19、使用管道传送XML数据
可
以在appcmd list
中使用/xml修饰符来创建复杂的任务,还可以执行大规模的批处理工作。利用/xml修饰符,可以讲一个查询的结果导出并保存到一个标准XML格式的文件
中,从而使其他命令行工具或者shell命令可以使用这个XML文件。例如,为了列出所有已启用的应用程序池,,并将信息保存到一个标准的XML文件中,
执行以下命令:
appcmd.exe list apppool /state:started /xml
使用Appcmd配置IIS 7
(2011-10-20 13:33:56)
标签:
appcmdiiscommandlineit |
分类: server2008core |
在Windows Server Core 2008版本中,提供了对IIS比较多的支持,但是嫩,由于不支持PowerShell,所以没办法使用Server Core 2008 R2中的PowerShell模块,但是,IIS 7提供了命令行appcmd来实现IIS 7的管理,用来配置IIS 7是一点问题木有的。
appcmd.exe在%windir%\system32\inetsrv里,默认系统路径是木有的,需要使用绝对路径来引用appcmd,非常不方便,所以首先第一件事就是要添加appcmd的路径
在命令行窗口下打开注册表,找到
[HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment]
找到Path键,将路径输入到值里面,以后就可以直接在命令行下使用appcmd了
查询所有网站信息
appcmd list sites
查询某个网站信息
appcmd list sites /name:"default web site"
查询正在运行的网站信息
appcmd list sites /state:started
获取帮助
appcmd site /?
appcmd list site /?
appcmd set site /?
appcmd add site /?
appcmd delete site /?
appcmd start site /?
其他的帮助信息与之类似,呵呵,有了这些,就可以使用帮助来配置大部分的IIS网站
新建一个网站
appcmd add site /name:"FirstSite" /id:2 /bindings:"http/*:81:" /physicalPath:"C:\MyNewSite"
appcmd add site /name:benet /id:2 /bindings:"http/192.168.1.1:80:www.benet.com" /physicalpath:"c:\benet" /serverautostart:true
删除一个网站
appcmd delete site "FirstSite"
修改一个网站信息
appcmd set site "FirstSite" /id:5
appcmd set site /site.name:"default web site" /bindings:"http/192.168.1.1:80:"
备份网站配置信息
appcmd add backup "My Backup"
恢复备份信息
appcmd restore backup "My Backup"
应用程序池 :Application Pool
列出Default Web Site的应用程序池
appcmd list apps /site.name:"Default Web Site"
获取帮助
appcmd list app /?
列出虚拟目录
appcmd list vdir /app.name:"Default Web Site/"
添加一个应用程序
appcmd add app /site.name:"Default Web Site" /path:/app1 /physicalPath:C:\inetpub\mysite\app1
为应用程序制定一个虚拟目录
appcmd add vdir /app.name:"Default Web Site/app1" /path:/vdir1 /physicalPath:C:\inetpub\mysite\app1\vdir1
新建一个应用程序池
APPCMD add apppool /name:MyAppPool
修改应用程序池
APPCMD set app "Default Web Site/" /applicationPool:MyAppPool
以文本方式列出默认应用程序池
appcmd list apppool "DefaultAppPool" /text:*
修改应用程序池的某一项属性,例如,修改managedRuntimeVersion属性值,以便使程序能运行在ASP.NET1.1环境下
appcmd set apppool "DefaultAppPool" /managedruntimeversion:v1.1
修改底层属性,也就是嵌套的属性值
APPCMD set apppool "DefaultAppPool" /processModel.pingingEnabled:false
检查当前的Web请求
appcmd list requests
以后的应用很多,已经超出我对IIS的理解了,木哈哈。等有IIS的具体应用再说了
更具体的设置可以参考下面这篇文章
http://learn.iis.net/page.aspx/114/getting-started-with-appcmdexe/
IIS命令行管理工具使用的更多相关文章
- ElasticSearch 命令行管理工具Curator
一.背景 elastic官网现在已经大面积升级到了5.x版本,然而针对elasticsearch的命令行管理工具curator现在仍然是4.0版本. 刚开始找到此工具,深深的怕因为版本更迭无法使用,还 ...
- virsh命令行管理工具
virsh命令行管理工具 Libvirt有两种控制方式,命令行和图形界面 图形界面: 通过执行名virt-manager,启动libvirt的图形界面,在图形界面下可以一步一步的创建虚拟机,管理虚拟机 ...
- rabbitmqadmin命令行管理工具-4
rabbitmqadmin命令行管理工具原文地址: https://www.cnblogs.com/wuzhiyuan/p/6856985.htmlhttps://www.cnblogs.com/mr ...
- rabbitmqctl 命令行管理工具
1. 用户管理 用户管理包括增加用户,删除用户,查看用户列表,修改用户密码. (1) 新增一个用户 rabbitmqctl add_user Username Password (2) 删除一个用户 ...
- 第4章:kubectl命令行管理工具
kubectl --help 查看帮助信息 kubectl create --help 查看create命令帮助信息 命令 描述 create 通过文件名或标准输入创建资源 expose 将一个资源公 ...
- PowerCmd-cmd命令行管理工具
缘由 看了大漠在慕课网关于angular的讲解,用到了PowerCmd.就百度一下准备下载,很小很实用的工具,发现有人总结了.备忘 http://www.cnblogs.com/xing901022/ ...
- 玩转Windows服务系列——命令行管理Windows服务
说到Windows服务的管理就不得不说通过命令行的方式管理Windows服务,因为无论是系统管理员,还是通过编程的方式调用cmd命令,命令行都是非常方便以及强大的工具. 接下来就看一下如何通过cmd命 ...
- iOS系统提供开发环境下命令行编译工具:xcodebuild
iOS系统提供开发环境下命令行编译工具:xcodebuild[3] xcodebuild 在介绍xcodebuild之前,需要先弄清楚一些在XCode环境下的一些概念[4]: Workspace:简单 ...
- libvirt 命令行交互工具之virsh
libvirt是当前主流VM最低层库.IBM PowerVM也不例外,libvirt是深入玩虚拟化必须玩转的东西; 简单测试玩玩libvirt 的virsh命令行交互工具, 你我都知libvirt大体 ...
随机推荐
- using 40 logical processors based on SQL Server licensing SqlServer CPU核心数限制问题
公司服务器是120核心cpu,但是实际应用中只有40核,原因是业务部门发现服务器cpu承载30%的时候sql 就会卡死: 然后从sqlserver 去查询,cpu核心数: SELECT COUNT(1 ...
- sql server 错误号大全
0 操作成功完成. 1 功能错误. 2 系统找不到指定的文件. 3 系统找不到指定的路径. 4 系统无法打开文件. 5 拒绝访问. 6 句柄无效. 7 存储控制块被损坏. 8 存储空间不足,无法处理此 ...
- strace命令详解
转自: http://www.cnblogs.com/ahuo/p/4150623.html 备注: 这篇博文学到的不仅仅是 strace 这个命令,还有前辈的排错思路,致敬! strace 命令是一 ...
- Java数组的创建和初始化
我们说到数组,可能有的人就会比较害怕了,其实,数组只是把对象序列(很多个对象)或者基本类型序列(很多个基本类型)放在一起而已.数组是通过方括号下标操作符[]来定义和使用的.如果要定义,创建一个数组,只 ...
- Java第二章----对象和类
从第一章到第二章整整隔了一个月的时间,这速度也是慢的无语了.因为这个月负责开发公司一个SaaS类型APP,忙的昏天暗地终于上线了,这才有时间写个博客.本章还是以概念为主,有点枯燥重在理解. 第一节:对 ...
- IDEA第七章----插件
idea的另一个可爱之处,就是它的强大的插件,下面我以CodeGlance插件为例,这个可以快速定位代码 第一节:安装插件 ● All plugins 显示所有插件. ● Enabled 显示当前所有 ...
- 修改wamp中mysql的默认空密码
WAMP安装好后,mysql密码是为空的,那么要如何修改呢? 一.打开mysql控制台. 提示输入密码,因为现在是空,所以直接按回车. 二.输入"use mysql",意思是使用m ...
- 设计模式学习(四): 1.简单工厂 (附C#实现)
New 这是一个典型的情况, 我们需要在运行时来实例化一些具体的类. 在需要修改或者扩展的时候我们就需要改这段代码. 一个程序中可能会多次出现类似的代码, 这使得维护和更新非常困难而且容易出错. 通过 ...
- python3之xml&ConfigParser&hashlib&Subprocess&logging模块
1.xml模块 XML 指可扩展标记语言(eXtensible Markup Language),标准通用标记语言的子集,是一种用于标记电子文件使其具有结构性的标记语言. XML 被设计用来传输和存储 ...
- 从Unity中的Attribute到AOP(二)
上一篇文章我们初步了解了一下Attributes的含义,并且使用系统自带的Attributes写了点代码.在进一步解剖我们的代码之前,我觉得有个概念可能需要巩固一下:什么是元数据? 我们知道C#代码会 ...