这似乎应该非常直接,但它对我不起作用,而且我没有想法。
我想要做的就是在使用msdeploy部署软件包时设置物理路径,这样它就不会转到默认的inetpub \ wwwroot位置。
msdeploy -verb:sync -source:package="D:\PATH\TO\PACKAGE.zip" -dest:iisapp="Default Web Site/SiteName" -setParam:kind=DestinationVirtualDirectory,scope="Default Web Site/SiteName",value="C:\Program Files\Physical\Location"
我觉得我必须遗漏一些明显的东西。
答案 0 :(得分:0)
我通过向MSDeploy包清单添加一个额外的命令(appcmd)来完成此操作,以在部署期间更改IIS站点的物理路径:
<runcommand path="%windir%\system32\inetsrv\appcmd set app /app.name:"Default Web Site/app12" /[path='/'].physicalPath:C:\temp\app12" waitInterval="5000"/>
答案 1 :(得分:0)
以下内容更改了远程计算机上虚拟应用程序的物理目录
"C:\Program Files\IIS\Microsoft Web Deploy V3\msdeploy.exe" -verb:sync -source:apphostconfig="my-website-name\my-virtual-application-name",computername=my-computer-name,username=my-service-account-username,password=my-service-account-password -dest:package=template.zip -declareParam:name="destVirtualDir",kind=DestinationVirtualDirectory,scope="my-website-name",defaultValue="c:\my-default-folder-name"
"C:\Program Files\IIS\Microsoft Web Deploy V3\msdeploy.exe" -verb:sync -source:package=template.zip -dest:apphostconfig="my-website-name/my-virtual-application-name",computername=my-computer-name,username=my-service-account-username,password=my-service-account-password -setParam:name="destVirtualDir",value="c:\my-new-folder-name"
为确保不会复制源和目标,您可以添加
-enableRule:Donotdeleterule -skip:objectName=filepath,absolutePath=.*
以上内容受到https://forums.iis.net/t/1169416.aspx的“启发”,其中还展示了如何进行其他网站和虚拟应用更改