当前位置首页 > IIS知识

IIS7.0Appcmd命令详解

阅读次数:270 次  来源:admin  发布时间:

转载:http://www.cnblogs.com/NatureSex/archive/2011/11/02/2233253.html

废话不说!虽然有配置界面管理器!但是做安装包的时候命令创建是必不可少的!最近使用NSIS制作安装包仔细研究了一下Appcmd的命令,可谓是功能齐全.

上网查了些资料,那些博客大部分都是转载的别人的。都是些基本的介绍,很多命令都没介绍到(不知道是不是我走眼了)。

就连微软的 技术资源库 也不详细:

附地址:http://technet.microsoft.com/zh-cn/library/cc772200(WS.10).aspx(反正我找了一遍!没找到我要的)

微软的 技术资源库 有的我就不介绍了,点开上面的链接自己去看。

(介绍我们能用到的一些命令,目前只包含site 的操作,其他apppool config app vdir 后续有时间在加入)

一:准备工作

APPcmd.exe 位于 C:\Windows\System32\inetsrv 目录

使用 Cd c:\Windows\System32\inetsrv 切换到该目录

二:命令操作简介

IIS 命令行管理工具基本格式:

APPCMD (命令) (对象类型) <标识符> </参数1:值1 ...>

支持的对象类型:

SITE 虚拟站点的管理

APP 管理应用程序

VDIR 管理虚拟目录

APPPOOL 管理应用程序池

CONFIG 管理常规配置节

WP 管理工作进程

REQUEST 管理 HTTP 请求

MODULE 管理服务器模块

BACKUP 管理服务器配置备份

TRACE 使用失败请求跟踪日志

-----------这个就不解释很详细了,懂的人都知道这个IIS的层次。

三:对Site的命令详解

1.命令介绍

虚拟站点的管理

APPCMD <命令> SITE [标识符] [-参数1:值1 ...] 如: appcmd list site (列出当前存在的站点)

支持的命令:

list 列出虚拟站点

et 配置虚拟站点

add 添加新虚拟站点

delete 删除虚拟站点

tart 启动虚拟站点

top 停止虚拟站点

2.详解

列出虚拟站点

APPCMD list SITE [标识符] [-参数1:值1 ...]

列出计算机上的虚拟站点。此命令可用于使用特定站点的标识符或 url 查找该站点,或者

基于指定的站点属性匹配零个或多个站点。

示例:

appcmd list site

列出计算机上的所有站点。

appcmd list site "Default Web Site"

查找站点“Default Web Site”。

appcmd list site http://localhost/app1

查找与指定的 url 关联的站点。

appcmd list site /serverAutoStart:false

查找“serverAutoStart”配置属性设置为“false”的所有站点。

添加新虚拟站点

APPCMD add SITE [标识符] [-参数1:值1 ...]

使用指定的设置创建新的虚拟站点。至少,必须提供站点名称和 ID。

支持的参数:

/name (必需) 站点名称

/id 站点 ID

/bindings “http://domain:port,...”好记格式或“protocol/bindingInformation,...”原始格式的绑定列表

/physicalPath

如果指定,将导致为该站点创建包含指向指定路径的根虚拟目录的根应用程序。如果忽

略,将创建一个没有根应用程序的站点,并且该站点在创建根应用程序之前将无法启动。

示例:

appcmd add site /name:"My New Site" /id:2 /bindings:http://www.domain.com:80

使用指定的好记绑定创建一个新站点“我的新站点”,以便在端口 80 上侦听对 www.d

omain.com 的 http 请求。

appcmd add site /name:"My New Site" /id:2 /bindings:http://*:81

使用指定的好记绑定创建一个新站点“我的新站点”,以便在端口 81 上侦听对任何域

名的 http 请求。

appcmd add site /name:"My New Site" /id:2 /bindings:http/*:81:

使用指定的 ID 和绑定创建新站点“我的新站点”。创建后,新站点中不包含任何应用

程序。

appcmd add site /name:"My New Site" /id:2 /bindings:http/*:81: /physicalPath:"c

:\inetpub\mynewsite"

使用指定的 ID 和绑定创建新站点“我的新站点”。系统将自动创建根虚拟目录指向指

定物理路径的根应用程序。

appcmd add site /name:"My New Site" /bindings:http/*:81:

使用绑定创建新站点“我的新站点”,并自动生成站点 ID。创建后,该新站点不包含

任何应用程序。

配置虚拟站点

APPCMD set SITE [标识符] [-参数1:值1 ...]

允许设置指定虚拟站点的属性。必须提供准确的站点标识符,并且必须将该标识符解析为现

有站点。

支持的参数:

identifier (必需)

要修改的站点的站点名称或 url

/site.name

要修改的站点的站点名称或 url (与标识符相同)

/binding

“http://domain:port,...”好记格式或“protocol/bindingInformation,...”原始

格式的绑定列表

示例:

appcmd set site "Default Web Site" /serverAutoStart:false /id:100

设置“Default Web Site”站点的“serverAutoStart”和“id”属性。

这里对 set 操作附加一些高级操作(重要)

当时用 appcmd set site "Default Web Site" 当时用后其他高级参数

解释后续补上............

-name 名称

-id ID标识

-serverAutoStart 是否自动启动

-bindings.[protocol='string',bindingInformation='string'].

-bindings.[protocol='string',bindingInformation='string'].

-limits.maxBandwidth

-limits.maxConnectio

-limits.connectionTimeout

-logFile.logExtFileFlag

-logFile.customLogPluginClsid

-logFile.logFormat

-logFile.directory

-logFile.period

-logFile.truncateSize

-logFile.localTimeRollover

-logFile.enabled

-traceFailedRequestsLogging.enabled

-traceFailedRequestsLogging.directory

-traceFailedRequestsLogging.maxLogFile

-traceFailedRequestsLogging.maxLogFileSizeKB

-traceFailedRequestsLogging.customActionsEnabled

-applicationDefaults.path

-applicationDefaults.applicationPool

-applicationDefaults.enabledProtocol

-virtualDirectoryDefaults.path

-virtualDirectoryDefaults.physicalPath 网站的物理路径

-virtualDirectoryDefaults.userName 物理路径凭据的账户

-virtualDirectoryDefaults.password 物理路径凭据的密码

-virtualDirectoryDefaults.logonMethod

-virtualDirectoryDefaults.allowSubDirConfig

-[path='string'].path

-[path='string'].applicationPool

-[path='string'].enabledProtocol

-[path='string'].virtualDirectoryDefaults.path

-[path='string'].virtualDirectoryDefaults.physicalPath

-[path='string'].virtualDirectoryDefaults.userName

-[path='string'].virtualDirectoryDefaults.password

-[path='string'].virtualDirectoryDefaults.logonMethod

-[path='string'].virtualDirectoryDefaults.allowSubDirConfig

-[path='string'].[path='string'].path

-[path='string'].[path='string'].physicalPath

-[path='string'].[path='string'].userName

-[path='string'].[path='string'].password

-[path='string'].[path='string'].logonMethod

-[path='string'].[path='string'].allowSubDirConfig

删除虚拟站点

APPCMD delete SITE [标识符] [-参数1:值1 ...]

描叙: 从计算机删除指定的虚拟站点。必须提供准确的站点标识符,并且必须将该标识符解析为现有站点。

支持的参数:

identifier (必需)要删除的站点的站点名称或 url

/site.name 要删除的站点的站点名称或 url (与标识符相同)

示例:

appcmd delete site "Default Web Site" 删除站点“Default Web Site”。

启动虚拟站点

APPCMD start SITE [标识符] [-参数1:值1 ...]

启动指定的虚拟站点并启用该站点,以开始侦听其所有绑定端点上的新请求。必须提供准确的站点标识符,并且必须将该标识符解析为现有站点。

支持的参数:

identifier (必需)要启动的站点的站点名称或 url

/site.name 要启动的站点的站点名称或 url (与标识符相同)

示例:

appcmd start site "Default Web Site"

启动站点“Default Web Site”。

停止虚拟站点

APPCMD stop SITE [标识符] [-参数1:值1 ...]

停止指定的虚拟站点,阻止在其绑定端点上接收新请求。必须提供准确的站点标识符,并且

必须将该标识符解析为现有站点。

支持的参数:

identifier (必需)要停止的站点的站点名称或 url

/site.name 要停止的站点的站点名称或 url (与标识符相同)

示例:

appcmd stop site "Default Web Site"

停止站点“Default Web Site”。

今天就写到这里把....希望对大家有用..

如果有更好的资料!请注明一个路径给予参考

上一篇:在VS2013中强制IISExpress应用程序池使用经典模式在VS2013中强制IISExpress应用程序池使用经典模式
下一篇:关于使用logrotate对tomcat和nginx日志进行滚动的注意事项