visual-studio - Visual Studio 2010 发布/网络部署问题

标签 visual-studio iis-7 msdeploy web-deployment webdeploy

我正在使用 Publish/Web Deploy 从 Visual Studio 2010 部署一个 asp.net 应用程序。它工作完美,但有一个问题。如果新版本没有按预期工作,旧版本已经被新版本取代,并且没有简单的方法可以回滚到工作版本。如何最好地解决这个问题?我希望可以在服务器上保留旧版本,这样我就可以在需要时切换回来。

最佳答案

WebDeploy 没有内置的回滚功能,所以一旦部署完成就可以了。

您可以实现多种手动策略,例如:

访问受限共享主机:

如果您没有对机器的完全访问权限 -

  1. 通过下载预先备份实时站点。

  2. 保留已部署内容的副本,以便在出现问题时可以推送以前的版本

完全访问权限:

为应用程序维护两组文件夹,并将您的站点映射到这些文件夹中的一个或另一个。当您开始部署时,将 IIS 站点的物理路径切换到 other 文件夹,然后进行部署。如果该站点失败,则只需将站点敲回原始文件夹即可。每次成功部署都会在这两个文件夹之间交替。

对于用户上传的内容之类的东西,您需要将虚拟目录映射到文件系统上始终位于同一位置的位置,因为您不希望每次都复制这些内容。

您不是唯一遇到这些问题的人。阅读 Rob Conery 的这篇文章以及他对 ASP.NET 部署情况的观察。

ASP.NET Deployment Needs To Be Fixed

Getting Constructive On ASP.NET Deployment

关于visual-studio - Visual Studio 2010 发布/网络部署问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7124627/

相关文章:

c# - 我可以告诉 Visual Studio 不要更改项目的 DPI 吗?

visual-studio - 当 cmdlet 提示输入信息时,如何防止包管理器控制台挂起?

WCF IIS 服务器配置

iis - 是否可以在 IIS 7 中将虚拟目录设置为根目录?

.net - GitHub 操作发布我的站点并以 HTTP ERROR 500.30 结束

deployment - MSDeploy "friendly"是否足够,或者可以将其包装在MSI文件中

visual-studio - 从 StyleCop 4.7 (Classic) 更新到 StyleCop.Analyzers

c# - Resharper(查找并)一次修复所有问题

asp.net-mvc - 将 ASP.NET MVC 应用程序部署到 IIS7 并保持干净的 web.config

msdeploy - MSDeploy 中的多次跳过?