使用部署槽将复杂的IIS网站移动到Azure Web应用程序

问题描述 投票:0回答:1

我们有一个庞大而复杂的IIS Web应用程序,它们是3个网站,一些wcf服务和一些MVC REST服务的组合,它们都运行在同一个IIS网站下。

可以想象,网站调用Web服务,Web服务调用其他Web服务。在此之前,可以将其配置为在localhost上调用服务,也可以调用完全限定的域。

我是一个Azure Web应用程序我认为没有locahost这样的东西,所以需要使用完全限定的域。这没问题。

但是,当谈到部署插槽时,它将如何工作?部署槽有不同的URL,那么我们如何在web.config中配置Web服务调用呢?我们是否必须在配置“临时插槽”的情况下部署它们,然后在交换之前将所有web.config更改为实际站点?

任何想法,将不胜感激。

azure web-services iis deployment azure-web-app-service
1个回答
0
投票

正如Jason P在他的comment中所说:创建URL作为应用程序设置,并让它们特定于插槽。这意味着设置将粘贴到他们定义的插槽中。

从其他部署槽克隆配置时,克隆的配置是可编辑的。此外,一些配置元素遵循跨交换的内容(不是特定于插槽),而其他配置元素在交换(特定于插槽)之后保持在相同的插槽中。

要将应用程序设置或连接字符串配置为粘贴到特定插槽(未交换),请导航到该插槽的“应用程序设置”页面,然后选择应粘贴到插槽的配置元素的“插槽设置”框。将配置元素标记为特定于插槽将告知App Service它不可交换。

来源:在Azure应用服务中设置登台环境 - Which settings are swapped?

编辑:

这将需要更改代码,以便所有服务调用使用插槽设置而不是web.config。

这不是真的。 Application Settings中的任何设置都会覆盖web.config中具有相同名称的设置。插槽设置也是如此。

© www.soinside.com 2019 - 2024. All rights reserved.