Dan*_*den 12 azure azure-web-sites azure-deployment-slots
我需要更好地了解适用于Azure应用服务的插槽应用程序设置.适用时以及如何正确使用它们.
我有2个App Services设置,每个运行2个插槽,如下所示.
站点1带插槽 - 分段
站点2与插槽 - 建设 - 生产
因此,对于每个站点,我希望能够在"应用程序设置"刀片中为构建槽添加无效的连接字符串,以便无法访问该站点,并且只会在azuerwebsites.net网址上为您提供基本错误页面那个插槽.
在每个我的生产槽中,然后我想放置正确的连接字符串,这样一旦交换它们就可以工作了.
我无法让它可靠地工作,我交换时设置不适用.我应该将生产槽上的连接字符串标记为插槽设置吗?构建插槽上的原始插槽应该是插槽设置吗?我是否需要安装一些我不知道的nuget包.
请帮忙
如果我正确理解您的问题,您需要将它们全部标记为插槽设置.
交换完成后,标记为插槽设置的应用程序设置和连接字符串将保留在插槽中.任何未标记为插槽设置的设置/连接字符串都将与应用程序交换.
在本文中找到了我的问题的答案。(如果有来自Azure团队的人来访,应该从此处的“部署插槽的配置”部分真正链接到该站点)
Windows Azure网站:应用程序字符串和连接字符串的工作方式
简而言之,除非使用的是.NET 4.5框架,否则不应使用ConfigurationManager从“应用程序设置”刀片中获取设置。
如果您不使用.NET 4.5框架,则应该使用Environment.GetEnvironmentVariable
。
当我将现有的环境转换为App Services时,这让我感到震惊。我本来希望在某个地方警告我,以确保做到这一点。
编辑:所以这不是全部。
另一部分是文档中“粘性”和“非粘性”设置的含义。我一直在寻找这样的事实:设置实际上并未放入您的web.config文件中,而是位于应用程序可访问的内存属性包中。我找不到任何有关如何看待这个神秘包包的参考,但是一旦您知道了答案,它就会很明显。
交换期间,登台插槽上的所有设置实际上都会复制到生产插槽的设置,即实际上是在生产插槽的“应用程序设置”刀片中对其进行更改。插槽的“应用程序设置”刀片中的内容就是内存属性包中的内容。
归档时间: |
|
查看次数: |
7026 次 |
最近记录: |