我正在寻找用于将ASP.NET Web应用程序项目(不是 ASP.NET网站)部署到生产环境的不同技术/工具?
我对持续集成构建服务器在某个位置放置二进制文件到第一个用户请求击中这些二进制文件之间的工作流特别感兴趣。
您使用的是某些特定工具还是XCOPY?应用程序如何打包(ZIP,MSI等)?
首次部署应用程序时,如何设置应用程序池和虚拟目录(是手动创建还是使用某些工具创建)?
当静态资源发生更改(CSS,JS或图像文件)时,您是重新部署整个应用程序还是仅重新部署已修改的资源?程序集/ ASPX页面更改时如何?
您是否跟踪给定应用程序的所有已部署版本,并且在出现问题的情况下是否具有将应用程序还原到先前已知的工作状态的过程?
随意完成上一个列表。
这是我们用来部署ASP.NET应用程序的方法:
- 我们将Web部署项目添加到解决方案中,并进行设置以构建ASP.NET Web应用程序
- 我们将一个安装项目(不是 Web安装项目)添加到解决方案中,并将其设置为采用Web部署项目的输出
- 我们添加一个自定义安装操作,并在OnInstall事件中运行一个自定义内部.NET程序集,该程序集使用System.DirectoryServices.DirectoryEntry在IIS中创建应用程序池和虚拟目录(此任务仅在首次部署应用程序时执行) 。我们在IIS中支持多个网站,对虚拟目录进行身份验证并为应用程序池设置身份。
- 我们在TFS中添加了自定义任务来构建安装项目(TFS不支持安装项目,因此我们不得不使用devenv.exe来构建MSI)
- MSI已安装在实时服务器上(如果有MSI的先前版本,则首先将其卸载)