2010-12-17 1 views
15

로컬 IIS 서버에 배포 된 웹 응용 프로그램이 있다고 가정합니다. 제거/배포 해제가 필요한 경우 IIS 관리자로 이동하여 응용 프로그램을 마우스 오른쪽 단추로 클릭 한 다음 "응용 프로그램 및 컨텐트 삭제"를 선택하면됩니다. 그러나 커맨드 라인에서 똑같이해야합니다 - 어떻게? 응용 프로그램의 이름을 알고 있다고 가정 할 수 있습니다.IIS : 명령 줄에서 웹 응용 프로그램을 배포 취소/삭제/제거하는 방법?

어쨌든 MSDeploy를 통해이 작업을 수행 할 수 있습니까?

+0

를 타고 보세요 : http://stackoverflow.com/questions/1610880/how-to-create-an-application-in-iis-using-command-line – adatapost

답변

2

iisweb/웹 사이트 삭제 [/ s의 컴퓨터 [/ U [도메인] 사용자/P 암호]

+0

'iisweb'이 (가) 내부 또는 외부 명령으로 인식되지 않습니다. 작동 가능 프로그램 또는 배치 파일. 도움이된다면 서버 2008 R2를 실행 중이므로 IIS가 v7입니다. – Riddler

+0

나는 당신을 shoud 사용 appcmd를 사용하여 http://learn.iis.net/page.aspx/114/getting-started-with-appcmdexe –

14

이 그것을 한 것입니다 :

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

+ +1을 알아 냈어 & 공유에 대한 –

+0

+1 멋지다. 감사! – danyim

+0

시간을 절약하기 위해 IIS 8을 실행하는 Windows 8 상자에서 C : \ Program Files (x86) \ IIS \ Microsoft Web Deploy V3 \ msdeploy "-verb : delete -dest : apphostconfig ="기본 웹 사이트/ " – LucasBr

11

방금에서 응용 프로그램을 제거하려면 내가 KN

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

appcmd는 IIS 7 이상에서만 사용 가능합니다. 그렇지 않으면 파일이 존재하지 않습니다. – danyim

+0

@Stephan Bauer, appcmd를 사용하여 한 번 더 많은 응용 프로그램을 삭제하고 싶습니다. 어떻게해야합니까? 귀하의 회신을 기다리겠습니다, 감사합니다! – Superman

+0

죄송 합니다만, 여러 응용 프로그램을 한꺼번에 삭제하는 유일한 방법은'appcmd '를 여러 번 호출하는 배치 파일 (또는 sth. similiar)을 만드는 것입니다. –

5

: 당신이 WebDeploy-확장이 설치되지 않은 경우 물리적으로 파일을 삭제하지 않고 IIS의 웹 사이트 (같은 msdeploy는 않음) 또는, 다음 명령을 사용할 수 있습니다 질문에는 "명령 줄"이라고 쓰여 있지만 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 
+0

로컬에서 작업하는 경우 모든 'PSSession'항목이 필요하지 않습니다. +1. – jpmc26

관련 문제