如何使用PowerShell在IIS中停止和启动单个网站?

我在Windows 7开发机器上的IIS7中configuration了多个站点,在同一个端口上运行,通常每次只运行一个,具体取决于我正在处理的内容。 我希望能够从PowerShell启动和停止我的开发网站,而不是打开IISpipe理器。 有没有人有一个很好的资源指向我正确的方向或已经完成了这个脚本?

仅供将来快速参考,命令是:

Import-Module WebAdministration Stop-WebSite 'Default Web Site' Start-WebSite 'Default Web Site' 

添加到Keith的答案,你可以使用Invoke-Command远程执行此操作。

 Import-Module WebAdministration $siteName = "Default Web Site" $serverName = "name" $block = {Stop-WebSite $args[0]; Start-WebSite $args[0]}; $session = New-PSSession -ComputerName $serverName Invoke-Command -Session $session -ScriptBlock $block -ArgumentList $siteName 

要访问系统模块,Powershell需要像这样运行:

 [path]\powershell.exe -NoExit -ImportSystemModules 

我在这个iis论坛上find了上述内容。

我发现以下内容可以阻止远程服务器上的单个网站的工作:

 Invoke-Command -Computername $servername -Scriptblock { (Import-Module WebAdministration); Stop-Website -Name "WebsiteName"; Stop-Website -Name "AnotherWebsiteName" } 

我有一些错误,直到Import-Module被放入()