使用命令工具 Appcmd 管理与设定 IIS 7

在使用 IIS 6 时,TigerLin 是用 Adsutil.vbs 来管理整个 IIS 的运行,让一些琐碎的工作都可快速的进行。过年期间在研究 IIS 7 的时候发现 Adsutil.vbs 已经无法使用了,到 Technet 上看了一下,看到了最新的命令管理工具是 Appcmd,过年闲的发慌刚好可以来研究一下~ 这篇文章也算是 TigerLin 当作日后方便查阅的笔记~^^


在使用 IIS 6 时,TigerLin 是用 Adsutil.vbs 来管理整个 IIS 的运行,让一些琐碎的工作都可快速的进行。过年期间在研究 IIS 7 的时候发现 Adsutil.vbs 已经无法使用了,到 Technet 上看了一下,看到了最新的命令管理工具是 Appcmd,过年闲的发慌刚好可以来研究一下~ 这篇文章也算是 TigerLin 当作日后方便查阅的笔记~^^

Appcmd 可以管理的对象如下:

  • SITE 管理虚拟站台
  • APP 管理应用程序
  • VDIR 管理虚拟目录
  • APPPOOL 管理应用程序集区
  • CONFIG 管理一般设定区段
  • WP 管理工作者处理序
  • REQUEST 管理 HTTP 要求
  • MODULE 管理服务器模块
  • BACKUP 管理服务器设定备份
  • TRACE 使用失败要求的追踪记录

在使用过程中,只要使用 "/?" 参数都有详细的说明,例如执行 appcmd site /? 就会列出很详细的说明了

使用案例:新增站台
appcmd add site /name:"My Test site" /id:9 /bindings:http/*:8080: /physicalPath:"d:@@@@@"

/name - 新增站台的识别名称
/id - 指定站台的识别元 (如省略将会自动给予一个)
/bindings - 指定系结的资讯
/PhysicalPath - 站台的实例路径

使用案例:对指定站台设定主机标头
appcmd set site /site.name:"My Test Site" /bindings:"http://test.ptitas.net:8080"

使用案例:更改站台的识别元
appcmd set site /site.name:"My Test Site" /id:999

这里要注意,变更识别元之后的站台默认会变成 "stop",要追加以操作启动站台
appcmd start site "My Test Web"

这样看来,Appcmd 的简单易用还真是不赖,在进行大型布署时可以用命令批次的方式省下不少的麻烦
这里 TigerLin 也测试了变更 LOG 格式的方法,语法比 adsutil.vbs 简单,但测试的过程要把 LOG 的各项属性找出来费了一点功夫呢~

使用案例:变更命令站台的 W3C Log 格式
首先,将其中一个站台的 LOG 纪录全部勾选,先以命令找出 Log 相关的区域设定
appcmd list config | findstr log > d:LogExt.txt

接下来新增一个站台,针对特殊的分析程序 (EX:AWStats) 设定 LOG,再度执行一次刚刚的命令,就会发现有两个区段,一个很长的就是全选的,另外一个就是依照需求自己设定的。很长的区段 (也就是全部勾选的LOG 字段)  可看到下列的内容:

我们可以用命令的方式自动备份 IIS 的组态档,不用人工进行备份了 (虽然 IIS7 会定时备份,但 TigerLin 习惯每天备份比较不会出差错)
基于以上的理由,TigerLin 越来越偏好使用命令的方式来设定了,多了解一些命令在未来的应用上会更广阔的 ^^b

参考连结
使用 Adsutil.vbs 管理命令码 http://technet.microsoft.com/zh-tw/library/cc781546.aspx
IIS 7.0:Appcmd.exe http://technet.microsoft.com/zh-tw/library/cc772200.aspx

原文:大专栏  使用命令工具 Appcmd 管理与设定 IIS 7


猜你喜欢

转载自www.cnblogs.com/chinatrump/p/11468264.html