How can I stop and start individual websites in IIS using PowerShell?

前端 未结 4 1570
北荒
北荒 2020-12-13 01:57

I have multiple sites configured in IIS7 on my Windows 7 development machine to run on the same port and usually only run one at a time depending on what I\'m working on. I

相关标签:
4条回答
  • 2020-12-13 02:02

    Adding to Keith's answer, you can perform this remotely using 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 
    
    0 讨论(0)
  • 2020-12-13 02:06

    Just for future quick reference, the commands are:

    Import-Module WebAdministration
    Stop-WebSite 'Default Web Site'
    Start-WebSite 'Default Web Site'
    
    0 讨论(0)
  • 2020-12-13 02:08

    I found that the following to stop individual websites on a remote server to work:

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

    I had some of the errors above until Import-Module was put in ()

    0 讨论(0)
  • 2020-12-13 02:09

    To get access to system modules, Powershell needs to be run like this:

    [path]\powershell.exe -NoExit -ImportSystemModules
    

    I found the above on this iis forum.

    0 讨论(0)
提交回复
热议问题