IIS のサイトをコマンドから開始・停止

IIS と言えば GUI で操作するのが一般的ですが、管理や運用の場面ではコマンドで一気に変更をかけたりする事が出来ると便利だったりします。

以下で紹介している iisweb.vbs もその一つで、ホストしているサイトの開始・停止をコマンドでリモートから管理できます。

使い方は、

cd /d %systemroot%\system32
iisweb /[start|stop] w3svc/<Site ID> /s <Server Name>

のような感じで、コマンド的にはシンプルですね。

iisweb.vbs は SYSTEM32 にあるので、SYSTEM32 に移動するかパスを指定して実行する必要があります。
Iisweb.vbs を使用して Web サイトを開始する (IIS 6.0)
Iisweb.vbs を使用して Web サイトを停止する (IIS 6.0)

例えば、SrvGrimo というサーバ上にある www.grimonet.com というサイトを停止したい場合には、あらかじめ inetmgr で Site ID を確認しておきます。
仮に www.grimonet.com の Site ID が 1 だったとすると実行するスクリプトは以下のような感じになります。

iisweb /stop w3svc/1 /s SrvGrimo

まぁ、これだけだと恩恵が分かりにくいですが、サーバが複数台あったり、複数サイトを一気に開始したりとかするときには、For コマンドと一緒に使うと非常に便利です。
あとは、タスクでサイトを切り替えたりとかしたい場合とかも。

他にもスクリプトで管理する方法が IIS にはいろいろあるので、IIS でサイトを構築している人は、一度下記のページを見てみると面白いかもしれません。

コマンド ライン管理スクリプトを使用する (IIS 6.0)

追記
@IT でも同様の企画があったので紹介
IIS 6.0をコマンド・プロンプトから管理する - @IT
何気にタイムリーなネタだったのかな?