2010-09-13 48 views
2

我的服務器是Windows Server 2008上運行腳本遙控器,IIS 7
我的客戶端是Windows Server 2003或Windows XP。對於IIS 7

我想遠程啓動/停止網站。
我易於管理做交互使用我的客戶機IIS 7管理器(CF http://blogs.iis.net/bdela/archive/2007/10/08/remote-administration-managing-iis-7-rco-from-windows-xp-2k3-and-vista.aspx

但我想這樣做在非交互式的方式,我們的目標是腳本這個作爲的一部分一個msbuild腳本。

我試過MSBuildExtensionPack但如果安裝在客戶網站上的IIS7它才起作用。 我試過powershell cmdlet,但我必須在服務器上啓動dcom(http://learn.iis.net/page.aspx/160/writing-powershell-commandlets-for-iis-70/)。

我該怎麼辦?

回答

6

如果你既可以客戶端和服務器升級到PowerShell 2.0中,你可以使用PowerShell遠程處理使用PowerShell 2.0的WebAdministration模塊一起做到這一點。首先,你需要啓用服務器PowerShell遠程處理像這樣(從提升的提示符):

PS> Set-ExecutionPolicy RemoteSigned 
PS> Enable-PSRemoting -Force 

然後在客戶機上執行以下命令:

PS> Invoke-Command servername {Import-Module WebAdministration; Stop-WebSite Foo} 
0

謝謝! Powershell 2.0做到了這一點。儘管如此,你的命令似乎並不奏效。

在服務器端我跑

PS> winrm quickconfig 

和在客戶端我跑

PS> Invoke-Command -computername servername -scriptblock {[system.reflection.assembly]::loadfrom("c:\windows\system32\inetsrv\microsoft.web.administration.dll");$server2 = New-object microsoft.web.administration.servermanager;$server2.Sites["Foo"].Stop()} 

如在描述:http://www.powershellcommunity.org/Default.aspx?tabid=55&EntryID=65