【问题标题】:IIS: how to undeploy/delete/remove a webapp from command line?IIS:如何从命令行取消部署/删除/删除 web 应用程序?
【发布时间】:2010-12-17 10:48:32
【问题描述】:

假设在本地 IIS 服务器上部署了一个 webapp。当我需要删除/取消部署它时,我可以转到 IIS 管理器,右键单击该应用程序,然后选择“删除应用程序和内容” - 等等。但是,我需要从命令行执行相同的操作 - 如何?可以假设应用程序的名称是已知的。

也许这可以通过 MSDeploy 以某种方式完成?

【问题讨论】:

标签: iis web-applications command-line


【解决方案1】:

如果您只想在 IIS 中从网站中删除应用程序而不实际删除文件(如 msdeploy 所做的那样),或者如果您没有安装 WebDeploy-extension,您可以使用以下命令:

C:\Windows\System32\inetsrv\appcmd.exe delete app "Default Web Site/MyAppName"

【讨论】:

  • 请注意 appcmd 仅适用于 IIS 7+,否则该文件不存在。
  • @Stephan Bauer,我想用appcmd一次删除更多的应用程序,怎么办?期待您的回复,谢谢!
  • 很抱歉,但我知道的唯一可能性(一次删除多个应用程序)是创建一个批处理文件(或类似的东西),多次调用appcmd
  • This link 对我也很有用,可以删除 IIS 上的应用程序。
【解决方案2】:

它是这样做的:

"C:\Program Files\IIS\Microsoft Web Deploy\msdeploy" -verb:delete -dest:apphostconfig="Default Web Site/<webapp_name>"

【讨论】:

  • 只是为了节省时间,在运行 IIS 8 的 Windows 8 机器中,它可能是 "C:\Program Files (x86)\IIS\Microsoft Web Deploy V3\msdeploy" -verb:delete -dest:apphostconfig="Default Web Site/&lt;webapp_name&gt;"
【解决方案3】:

我知道问题是“命令行”,但您可以使用 PowerShell 和 IIS Administration Cmdlets 来执行此任务。我提供了所有功能并解释了如何自动化这个on my blog 的过程。此外,您可以轻松地将 IIS 管理 Cmdlet 调用替换为对 msdeploy、appcmd、IIsVdir.vbs 等的调用。

对于您的具体问题,这个 PowerShell 代码应该可以解决问题:

$block = {
    Import-Module WebAdministration
    $website = "YourWebsiteName"
    $applicationName = "PathUnderWebsite\ToYourApplication"

    $fullPath = Join-Path $website $applicationName
    Write-Host "Checking if we need to remove '$fullPath'..."
    if (Get-WebApplication -Site "$website" -Name "$applicationName")
    {
        Write-Host "Removing '$fullPath'..."
        Remove-WebApplication -Site "$website" -Name "$applicationName"
    }

    Write-Host "Deleting the directory '$fullPath'..."
    Remove-Item -Path "IIS:\Sites\$fullPath" -Recurse -Force
}
$session = New-PSSession -ComputerName "Your.WebServer.HostName"
Invoke-Command -Session $session -ScriptBlock $block
Remove-PSSession -Session $session

【讨论】:

  • 如果在本地工作,您不需要所有 PSSession 的东西。 +1,不过。
【解决方案4】:

iisweb /delete 网站 [/s 计算机 [/u [域]用户 /p 密码]]

【讨论】:

猜你喜欢
  • 1970-01-01
  • 2010-10-03
  • 1970-01-01
  • 1970-01-01
  • 2014-04-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多