1

我开始使用 web deploy 来构建和部署 web 应用程序。到目前为止,我可以构建一个包并部署它,但它并没有比 xcopy 部署做得更多。

所以我构建包的命令是这样的:

msbuild EMP.WebAdmin.csproj /T:Package /P:Configuration=Release;PackageLocation="D:\Packages\WebAdmin.zip";DeployIisAppPath="TestWebAdmin"

如果 TestWebAdmin 已经存在并且 .net 的版本已设置为 .net 4 一切似乎都很好。但是,我真正想做的是检查包以查看部署是否已经存在,如果不创建它(最好在定义的目录中)并确保正确设置任何主机头。我是不是对 web 部署要求太多了,我一直没能找到一篇很好的文章来讨论如何实现这种细节。

我正在尝试做的事情可能吗?

4

2 回答 2

0

项目的发布/打包网站选项卡上的设置是什么?您的站点需要使用 IIS,并且您需要选中该框以包含 IIS 应用程序设置。另外,你是如何部署的?我的理解是您使用的 msbuild 命令将构建包,但是您在哪里调用 msdeploy?

我没有 msdeploy 为我创建应用程序,但它正在运行我也包括在内的 Sql 更新脚本。

于 2010-10-29T14:46:07.183 回答
0

您可以直接调用 WebDeploy 来创建您的包并将其设置为构建后事件:

"%ProgramFiles%\IIS\Microsoft Web Deploy\msdeploy.exe" -source:iisApp="<physical path to your app>" -dest:package=d:\myApp.zip

这样您就不必将您的应用程序部署到 IIS 服务器,事实上您不需要在盒子上安装 IIS。

于 2010-11-04T02:47:24.117 回答