2

我在 azure 中有几个插槽,一个用于 qa,一个用于分期,一个用于“直播”。我同时发布到 QA 和 staging,一旦 QA 获得批准,我就想将 staging 与 live 交换(这样 staging 现在变为 live)。

我的问题是,由于 staging 本身就是一个单独的 Web 应用程序,它在 web.config 文件中有自己的设置(数据库连接、客户端 ID、客户端密码等)如果我交换,web.config 是否交换为出色地 ?因此,如果设置不同,我的“实时”应用程序不再具有正确的设置(它采用暂存 web.config 设置)

这个对吗 ?交换部署槽时如何保留实时设置?另外,这对网络作业有何影响?我在 web 应用程序下有几个,具有相应的 app.config 设置

4

1 回答 1

3

答案是您可以控制在交换期间设置是否更改或保持不变。查看以下文章:https ://docs.microsoft.com/en-us/azure/app-service/web-sites-staged-publishing 。从那篇文章:

部署槽的配置

当您从另一个部署槽克隆配置时,克隆的配置是可编辑的。此外,一些配置元素将在交换后跟随内容(不是特定于插槽),而其他配置元素将在交换后保留在同一插槽中(特定于插槽)。以下列表显示了交换插槽时将更改的配置。

交换的设置:

  • 常规设置 - 例如框架版本、32/64 位、Web 套接字
  • 应用程序设置(可以配置为粘在插槽上)
  • 连接字符串(可以配置为粘在插槽上)
  • 处理程序映射
  • 监控和诊断设置
  • 网络工作内容

未交换的设置:

  • 发布端点
  • 自定义域名
  • SSL 证书和绑定
  • 比例设置
  • WebJobs 调度程序

要将应用程序设置或连接字符串配置为粘贴到插槽(未交换),请访问特定插槽的应用程序设置边栏选项卡,然后为应该粘贴到插槽的配置元素选择插槽设置框。请注意,将配置元素标记为特定于插槽的效果是将该元素确定为不可在与应用程序关联的所有部署插槽之间交换。

于 2017-12-20T12:50:26.527 回答