【发布时间】:2018-11-30 01:04:53
【问题描述】:
我注意到 Azure 应用服务的一些部署槽设置可以交换,但其他的不能交换。 你知道为什么吗?
【问题讨论】:
-
我知道,但为什么只允许某些设置而其他设置不允许?有什么技术依据吗?
标签: azure azure-web-app-service
我注意到 Azure 应用服务的一些部署槽设置可以交换,但其他的不能交换。 你知道为什么吗?
【问题讨论】:
标签: azure azure-web-app-service
首先我们应该了解,插槽主要用于快速部署网站的新版本。 不建议在插槽上运行(例如)暂存环境。
根据文档,这些设置不会被交换:
- 发布端点
- 自定义域名
- SSL 证书和绑定
- 比例设置
- WebJobs 调度程序
如果其中任何一个会被交换,那将意味着您的应用程序将中断。不止一种方式。
例如,您必须更改部署的发布端点,因为它们会与插槽交换。这意味着每次交换插槽都要更新你的 CI/CD 环境。
连接到您的 production 插槽的自定义域名现在将指向辅助插槽,从而使交换变得无用。因为您的域仍然指向旧版本!
如果有人设法到达新版本(这会很困难,因为自定义域名仍指向另一个插槽),则 SSL 证书(和绑定)将不存在。发生在提供HSTS header 的网站上的图像。
您可以为这些设置中的每一个在交换插槽时不交换至少一个充分的理由。
【讨论】:
我们在 UserVoice 中有许多功能请求,要求设置保持对插槽的粘性,并计划处理其中的一些。随时将您的支持添加到您感兴趣的人: https://feedback.azure.com/forums/169385-web-apps
【讨论】: