You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用PowerShell/Azure CLI为多个Azure Web App槽位配置VNet集成

批量为Azure Web App部署槽配置VNet集成方案

核心改动逻辑:原有命令仅针对Web App主站点生效,针对部署槽配置时,需要在az webapp vnet-integration add命令中新增--slot参数指定目标槽位名称,同时新增遍历每个Web App下所有部署槽的逻辑即可。

调整后完整可运行代码如下:

$RGName = "web app资源组名称"
$vnetName = "yashvnet01"
$VnetRG = "vnet所属资源组名称"
$subnetName = "目标子网名称"

# 获取VNet和子网配置
$Vnet = Get-AzVirtualNetwork -Name $vnetName -ResourceGroupName $VnetRG
$subnet = Get-AzVirtualNetworkSubnetConfig -Name $subnetName -VirtualNetwork $Vnet

# 遍历指定资源组下所有Web App
$Webapps=Get-AzWebApp -ResourceGroupName $RGname
ForEach($webapp in $Webapps.Name)
{
    # 可选:保留原有主站点VNet集成配置逻辑,不需要可删除
    Write-Host "正在为Web App主站点 $webapp 配置VNet集成"
    az webapp vnet-integration add --resource-group $RGname --name $webapp --vnet $Vnet.Id --subnet $subnetName
    Write-Host "Web App主站点 $webapp VNet集成配置完成"

    # 新增:获取当前Web App的所有部署槽并遍历配置
    $slots = Get-AzWebAppSlot -ResourceGroupName $RGName -Name $webapp
    ForEach($slot in $slots)
    {
        Write-Host "正在为Web App $webapp 的槽位 $($slot.Name) 配置VNet集成"
        # 新增--slot参数指定槽位名称
        az webapp vnet-integration add --resource-group $RGname --name $webapp --slot $slot.Name --vnet $Vnet.Id --subnet $subnetName
        Write-Host "Web App $webapp 的槽位 $($slot.Name) VNet集成配置完成"
    }
}
  • 执行前需确认目标子网已完成Microsoft.Web/serverFarms服务委派,未配置委派会导致VNet集成添加失败
  • 运行脚本前需提前通过az login完成Azure账号登录,并通过az account set --subscription <订阅ID>切换到目标订阅
  • 若仅需要为指定名称的槽位配置,可在遍历槽位时新增名称过滤条件

内容的提问来源于stack exchange,提问作者rewanth varma

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.06 11:30:03