如何通过ARM模板正确配置Function App的槽特定设置?
正确配置Function App槽特定应用设置的ARM模板方法
直接在应用配置项中添加slotSetting: true的写法已不再被ARM模板的当前API版本支持,正确的做法是通过slotConfigNames来声明槽特定的配置项,步骤如下:
- 在
siteConfig.appSettings数组中定义你的应用配置(无需包含slotSetting属性) - 在
siteConfig.slotConfigNames.appSettingNames数组中添加该配置的名称,标记其为槽特定
示例ARM模板代码片段:
{ "type": "Microsoft.Web/sites", "apiVersion": "2023-01-01", "name": "[variables('functionAppName')]", "location": "[resourceGroup().location]", "properties": { "serverFarmId": "[resourceId('Microsoft.Web/serverfarms', variables('hostingPlanName'))]", "siteConfig": { "appSettings": [ { "name": "AzureWebJobs.HandleFiscalFrResponse.Disabled", "value": "1" } ], "slotConfigNames": { "appSettingNames": [ "AzureWebJobs.HandleFiscalFrResponse.Disabled" ] } } } }
配置完成后,该应用设置会被标记为槽特定,部署到不同部署槽时不会被跨槽覆盖,也不会出现属性被静默忽略的问题。建议使用较新的API版本(如2023-01-01)以确保配置生效。
内容的提问来源于stack exchange,提问作者Matt Douhan
相关产品推荐
相关产品推荐

