您如何进行生产 IIS 网站部署?

Gle*_*ven 15 iis deployment

所以,不确定这是堆栈溢出还是服务器故障问题。如果我有一个 .NET 网站要部署到生产环境,那么最好的方法是什么。我应该将其打包为 MSI 并安装吗?使用 nant 将需要的文件上推。只是使用 Beyond Compare FTP 上传文件?

你如何部署生产代码?这是我在这里查看的 Windows 特定案例。

Joe*_*sky 15

IIS 支持 xcopy 部署,因此除非您有特殊要求,否则只需复制文件即可。

一种方法是使用ROBOCOPY将新文件复制到服务器的简单脚本。

如果站点很大并且需要很长时间,请使用版本控制系统。我喜欢Mercurial为此目的,尽管您必须小心版本控制系统的配置文件最终不会提供给公众。部署只是提交更改然后在服务器上检查最新版本的问题。除了高效之外,这还允许快速回滚(如果您标记了最后一个好的版本),以防您的最新和最伟大的版本有一个showstopper 错误。

为了最大限度地减少停机时间,您可以让脚本将文件复制到新目录,然后快速重命名目录,或更改 IIS 指向新目录的位置。


小智 13

考虑使用Microsoft的Web 部署工具。它专门用于帮助将 Web 应用程序和这些 Web 应用程序的更新部署到生产 IIS 6 和 7 Web 服务器,并且它比 MSI(Windows 安装程序),恕我直言做得更好。

通常,您通过在某处设置“黄金大师”站点来使用它,然后告诉该工具从那里打包更改。然后,它会查看要部署的目标服务器,并进行必要的更改以使其看起来像黄金主服务器(这对后续更新很有用)。如果您要部署到多个 Web 服务器(即场),它特别有用,并且它不仅支持部署文件(它还可以处理注册表更改、部署证书、SQL 数据库等)。