将站点发布到生产环境中涉及的步骤

时间:2013-09-04 10:32:33

标签: asp.net-mvc-4 deployment publish

我刚刚在采访中触发了这个问题。 将asp.net mvc4应用程序发布到生产环境需要哪些必要步骤?

我刚刚告诉了这个

  1. 已更改为发布模式并发布网站。
  2. 在web.config
  3. 中查找连接变量
  4. 寻找应用程序设置
  5. 然后在IIS中创建一个应用程序
  6. 为其创建应用程序周期
  7. 然后将源路径映射到IIS中的应用程序
  8. 但是他们期待很多。有什么想法吗?

1 个答案:

答案 0 :(得分:1)

理想情况下,在部署到生产之前,站点/应用程序已经在测试环境中进行了测试(理想情况下是类似prod的环境),所以它应该只是将部署包从Prod-Like推广到Prod并应用相关配置转换/标记替换连接字符串,服务端点和凭证等内容。

更全面地说,我会寻找的一些事情:

  • 在打开优化的情况下编译二进制文件,并将PDB设置为“none”或“pdbonly”(即不是“full”)
  • 所有引用的程序集及其完整的传递树是否可在目标服务器中解析 - 即不在部署程序包的“bin”目录中的任何内容必须可通过GAC解析或单独放入“bin”目录中
  • 应使用适当的生产环境值设置web.config,其中包括以下内容:
    • 纠正prod连接字符串
    • Debug设为'false'
    • 正确生产WCF端点和配置(绑定,证书等)
    • 删除任何非prod / dubug处理程序和模块
  • 如果正在使用https,则正确设置SSL证书
  • 应用程序在IIS中创建,相应的应用程序池(集成管道,ASP.Net版本4)相关联(理想情况下是应用程序特定的应用程序池,即不与其他应用程序/站点共享)
  • 确保ASP.Net 4已在目标服务器上的IIS中正确注册
  • 确保prod配置runAllManagedModulesForAllRequests设置为'true'
  • 确保目标服务器上安装了“HTTP重定向”
  • 除了出现的错误之外的任何其他内容

但实际上,所有这些东西都应该在一个模仿产品设置的预制环境中被冲洗掉,任何缺少的东西都应用于这两个环境(prod和pre-prod),然后进行进一步的测试在最终推出生产之前,预先制定了环境。