2016-07-15 20 views
0

Ich habe MSDeploy eine Web-Paket Zip-Datei auf eine Remote-IIS-Website mit einem Befehl wie diese, dieWie Sie einen Zielordner mit MSDeploy angeben

MyDeployCommand.deploy.cmd /T /M:https://MyServer:8172/msdeploy.axd -allowUntrusted /U:Username /P:Password /A:Basic "-setParam:name='IIS Web Application Name',value='My Website Name'" 

Obwohl dies funktioniert, wird standardmäßig das aktuelle Verzeichnis erfolgreich den Einsatz der Website zeigt auf. Ich möchte den physischen Pfad ändern. Ich habe eine Reihe von Parametern ohne Erfolg ausprobiert und mich gefragt, ob das überhaupt möglich ist.

Dank für den Hinweis auf die appcmd chief7, die auf dem Ziel zB

%windir%\system32\inetsrv\appcmd set site /site.name:"My Website Name" /application[path='/'].virtualDirectory[path='/'].physicalPath:"C:\new\path" 

Allerdings funktioniert, wenn ich die gleiche Sache auf dem entfernten Rechner zB

"%MSDeployPath%msdeploy.exe" -verb:sync -source:runCommand="%windir%\system32\inetsrv\appcmd.exe set site /site.name:;quot;My Website Name;quot; /application[path='/'].virtualDirectory[path='/'].physicalPath:;quot;C:\new\path;quot;",dontUseCommandExe=true -dest:auto 

Sein kommt zurück mit

versuchen

Fehler: Das System kann die angegebene Datei nicht finden. (Ausnahme von HRESULT: 0x80070002) was ich vermute, bezieht sich auf die appcmd. Ich fügte hinzu,

dontUseCommandExe=true 

, um das Problem der es über cmd.exe gerufen zu bekommen

Antwort

0

Sie können die WebDeploy erweitern manifestieren die Website/app Pfad mit einem RunCommand Anbieter zu ändern.

<runcommand path=&quot;%windir%\system32\inetsrv\appcmd set app /app.name:&amp;quot;Default Web Site/app12&amp;quot; /&#91;path=&#39;/&#39;&#93;.physicalPath:C:\temp\app12&quot; waitInterval=&quot;5000&quot;/> 

http://www.dotnetcatch.com/2016/06/28/webdeploymsdeploy-quick-tip-change-iis-siteapp-physical-path-with-msdeploy/

http://www.dotnetcatch.com/2016/05/19/extending-the-webdeploy-manifest/

Der appHostConfig Anbieter ist auch das Verzeichnis soll man lassen ändern, aber das war einfacher.