你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

Microsoft.Web sites/config 'web' 2021-01-01

Bicep 资源定义

可以使用针对以下操作部署站点/配置资源类型:

有关每个 API 版本中更改的属性的列表,请参阅 更改日志

名称属性的选项

sites/config 资源接受基于 name 属性的值的不同属性。 本文介绍设置 name: 'web'时可用的属性。

有关其他选项,请参阅:

资源格式

若要创建 Microsoft.Web/sites/config 资源,请将以下 Bicep 添加到模板。

resource symbolicname 'Microsoft.Web/sites/config@2021-01-01' = {
  name: 'web'
  kind: 'string'
  parent: resourceSymbolicName
  properties: {
    acrUseManagedIdentityCreds: bool
    acrUserManagedIdentityID: 'string'
    alwaysOn: bool
    apiDefinition: {
      url: 'string'
    }
    apiManagementConfig: {
      id: 'string'
    }
    appCommandLine: 'string'
    appSettings: [
      {
        name: 'string'
        value: 'string'
      }
    ]
    autoHealEnabled: bool
    autoHealRules: {
      actions: {
        actionType: 'string'
        customAction: {
          exe: 'string'
          parameters: 'string'
        }
        minProcessExecutionTime: 'string'
      }
      triggers: {
        privateBytesInKB: int
        requests: {
          count: int
          timeInterval: 'string'
        }
        slowRequests: {
          count: int
          path: 'string'
          timeInterval: 'string'
          timeTaken: 'string'
        }
        slowRequestsWithPath: [
          {
            count: int
            path: 'string'
            timeInterval: 'string'
            timeTaken: 'string'
          }
        ]
        statusCodes: [
          {
            count: int
            path: 'string'
            status: int
            subStatus: int
            timeInterval: 'string'
            win32Status: int
          }
        ]
        statusCodesRange: [
          {
            count: int
            path: 'string'
            statusCodes: 'string'
            timeInterval: 'string'
          }
        ]
      }
    }
    autoSwapSlotName: 'string'
    azureStorageAccounts: {}
    connectionStrings: [
      {
        connectionString: 'string'
        name: 'string'
        type: 'string'
      }
    ]
    cors: {
      allowedOrigins: [
        'string'
      ]
      supportCredentials: bool
    }
    defaultDocuments: [
      'string'
    ]
    detailedErrorLoggingEnabled: bool
    documentRoot: 'string'
    experiments: {
      rampUpRules: [
        {
          actionHostName: 'string'
          changeDecisionCallbackUrl: 'string'
          changeIntervalInMinutes: int
          changeStep: int
          maxReroutePercentage: int
          minReroutePercentage: int
          name: 'string'
          reroutePercentage: int
        }
      ]
    }
    ftpsState: 'string'
    functionAppScaleLimit: int
    functionsRuntimeScaleMonitoringEnabled: bool
    handlerMappings: [
      {
        arguments: 'string'
        extension: 'string'
        scriptProcessor: 'string'
      }
    ]
    healthCheckPath: 'string'
    http20Enabled: bool
    httpLoggingEnabled: bool
    ipSecurityRestrictions: [
      {
        action: 'string'
        description: 'string'
        headers: {}
        ipAddress: 'string'
        name: 'string'
        priority: int
        subnetMask: 'string'
        subnetTrafficTag: int
        tag: 'string'
        vnetSubnetResourceId: 'string'
        vnetTrafficTag: int
      }
    ]
    javaContainer: 'string'
    javaContainerVersion: 'string'
    javaVersion: 'string'
    keyVaultReferenceIdentity: 'string'
    limits: {
      maxDiskSizeInMb: int
      maxMemoryInMb: int
      maxPercentageCpu: int
    }
    linuxFxVersion: 'string'
    loadBalancing: 'string'
    localMySqlEnabled: bool
    logsDirectorySizeLimit: int
    managedPipelineMode: 'string'
    managedServiceIdentityId: int
    minimumElasticInstanceCount: int
    minTlsVersion: 'string'
    netFrameworkVersion: 'string'
    nodeVersion: 'string'
    numberOfWorkers: int
    phpVersion: 'string'
    powerShellVersion: 'string'
    preWarmedInstanceCount: int
    publicNetworkAccess: 'string'
    publishingUsername: 'string'
    push: {
      kind: 'string'
      properties: {
        dynamicTagsJson: 'string'
        isPushEnabled: bool
        tagsRequiringAuth: 'string'
        tagWhitelistJson: 'string'
      }
    }
    pythonVersion: 'string'
    remoteDebuggingEnabled: bool
    remoteDebuggingVersion: 'string'
    requestTracingEnabled: bool
    requestTracingExpirationTime: 'string'
    scmIpSecurityRestrictions: [
      {
        action: 'string'
        description: 'string'
        headers: {}
        ipAddress: 'string'
        name: 'string'
        priority: int
        subnetMask: 'string'
        subnetTrafficTag: int
        tag: 'string'
        vnetSubnetResourceId: 'string'
        vnetTrafficTag: int
      }
    ]
    scmIpSecurityRestrictionsUseMain: bool
    scmMinTlsVersion: 'string'
    scmType: 'string'
    tracingOptions: 'string'
    use32BitWorkerProcess: bool
    virtualApplications: [
      {
        physicalPath: 'string'
        preloadEnabled: bool
        virtualDirectories: [
          {
            physicalPath: 'string'
            virtualPath: 'string'
          }
        ]
        virtualPath: 'string'
      }
    ]
    vnetName: 'string'
    vnetPrivatePortsCount: int
    vnetRouteAllEnabled: bool
    websiteTimeZone: 'string'
    webSocketsEnabled: bool
    windowsFxVersion: 'string'
    xManagedServiceIdentityId: int
  }
}

属性值

sites/config-web

名称 说明
name 资源名称

了解如何在 Bicep 中为子资源设置名称和类型。
“Web”
kind 资源类型。 字符串
父级 (parent) 在 Bicep 中,可以为子资源指定父资源。 仅当子资源在父资源外部声明时,才需要添加此属性。

有关详细信息,请参阅 父资源之外的子资源
类型为“站点”的资源的符号名称
properties 核心资源属性 SiteConfig

SiteConfig

名称 说明
acrUseManagedIdentityCreds 将托管标识 Creds 用于 ACR 拉取的标志 bool
acrUserManagedIdentityID 如果使用用户托管标识,则用户托管标识 ClientId 字符串
alwaysOn true如果启用Always On,则为 ;否则为 false bool
apiDefinition 有关应用的正式 API 定义的信息。 ApiDefinitionInfo
apiManagementConfig 链接到应用的 Azure API 管理设置。 ApiManagementConfig
appCommandLine 要启动的应用命令行。 string
appSettings 应用程序设置。 NameValuePair[]
autoHealEnabled true 如果启用了“自动愈合”,则为 ;否则为 false bool
autoHealRules 自动愈合规则。 AutoHealRules
autoSwapSlotName 自动交换槽名称。 字符串
azureStorageAccounts Azure 存储帐户列表。 对象 (object)
connectionStrings 连接字符串。 ConnStringInfo[]
cors 跨源资源共享 (CORS) 设置。 CorsSettings
defaultDocuments 默认文档。 string[]
detailedErrorLoggingEnabled true 如果启用了详细错误日志记录,则为 ;否则为 false bool
documentRoot 文档根目录。 字符串
experiments 这是多态类型的解决方法。 试验
ftpsState FTP/FTPS 服务的状态 “AllAllowed”
'Disabled'
'FtpsOnly'
functionAppScaleLimit 站点可以横向扩展到的最大辅助角色数。
此设置仅适用于消耗和弹性高级计划
int
functionsRuntimeScaleMonitoringEnabled 获取或设置一个值,该值指示是否启用函数运行时规模监视。 启用后,
ScaleController 不会直接监视事件源,而是调用
运行时以获取缩放状态。
bool
handlerMappings 处理程序映射。 HandlerMapping[]
healthCheckPath 运行状况检查路径 string
http20Enabled Http20Enabled:配置网站以允许客户端通过 http2.0 进行连接 bool
httpLoggingEnabled true 如果启用了 HTTP 日志记录,则为 ;否则为 false bool
ipSecurityRestrictions main的 IP 安全限制。 IpSecurityRestriction[]
javaContainer Java 容器。 字符串
javaContainerVersion Java 容器版本。 字符串
javaVersion Java 版本。 字符串
keyVaultReferenceIdentity 用于密钥保管库参考身份验证的标识。 字符串
限制 网站限制。 SiteLimits
linuxFxVersion Linux 应用框架和版本 string
loadBalancing 站点负载均衡。 “LeastRequests”
“LeastResponseTime”
“PerSiteRoundRobin”
'RequestHash'
“WeightedRoundRobin”
'WeightedTotalTraffic'
localMySqlEnabled true 启用本地 MySQL;否则为 false bool
logsDirectorySizeLimit HTTP 日志目录大小限制。 int
managedPipelineMode 托管管道模式。 “经典”
“Integrated”
managedServiceIdentityId 托管服务标识 ID int
minimumElasticInstanceCount 站点的最小实例计数
此设置仅适用于弹性计划
int
minTlsVersion MinTlsVersion:配置 SSL 请求所需的最低 TLS 版本 '1.0'
'1.1'
'1.2'
netFrameworkVersion .NET Framework版本。 string
nodeVersion Node.js 的版本。 字符串
numberOfWorkers 工作线程数。 int
phpVersion PHP 的版本。 字符串
powerShellVersion PowerShell 的版本。 string
preWarmedInstanceCount 预热实例数。
此设置仅适用于消耗和弹性计划
int
publicNetworkAccess 允许或阻止所有公共流量的属性。 字符串
publishingUsername 发布用户名。 字符串
push 推送终结点设置。 PushSettings
pythonVersion Python 的版本。 string
remoteDebuggingEnabled true 如果启用了远程调试,则为 ;否则为 false bool
remoteDebuggingVersion 远程调试版本。 字符串
requestTracingEnabled true 如果启用了请求跟踪,则为 ;否则为 false bool
requestTracingExpirationTime 请求跟踪过期时间。 字符串
scmIpSecurityRestrictions scm 的 IP 安全限制。 IpSecurityRestriction[]
scmIpSecurityRestrictionsUseMain scm 使用main的 IP 安全限制。 bool
scmMinTlsVersion ScmMinTlsVersion:配置 SCM 站点的 SSL 请求所需的最低 TLS 版本 '1.0'
'1.1'
'1.2'
scmType SCM 类型。 “BitbucketGit”
“BitbucketHg”
“CodePlexGit”
“CodePlexHg”
“Dropbox”
“ExternalGit”
“ExternalHg”
“GitHub”
“LocalGit”
“None”
“OneDrive”
“Tfs”
“VSO”
“VSTSRM”
tracingOptions 跟踪选项。 string
use32BitWorkerProcess true 使用 32 位工作进程;否则为 false bool
virtualApplications 虚拟应用程序。 VirtualApplication[]
vnetName 虚拟网络名称。 string
vnetPrivatePortsCount 分配给此应用的专用端口数。 这些将在运行时动态分配。 int
vnetRouteAllEnabled 虚拟网络启用“全部路由”。 这会导致所有出站流量都应用了虚拟网络安全组和用户定义的路由。 bool
websiteTimeZone 设置站点用于生成时间戳的时区。 与 Linux 和 Windows App 服务兼容。 设置WEBSITE_TIME_ZONE应用设置优先于此配置。对于 Linux,需要 tz 数据库值 https://www.iana.org/time-zones (快速参考,请参阅 https://en.wikipedia.org/wiki/List_of_tz_database_time_zones) 。 对于 Windows,需要 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Time Zones 下列出的时区之一 字符串
webSocketsEnabled true 如果已启用 WebSocket,则为 ;否则为 false bool
windowsFxVersion Xenon 应用框架和版本 字符串
xManagedServiceIdentityId 显式托管服务标识 ID int

ApiDefinitionInfo

名称 说明
url API 定义的 URL。 string

ApiManagementConfig

名称 说明 Value
id APIM-Api 标识符。 字符串

NameValuePair

名称 说明
name 对名称。 string
value 对值。 字符串

AutoHealRules

名称 说明
actions 触发规则时要执行的操作。 AutoHealActions
触发器 描述何时执行自动愈合操作的条件。 AutoHealTriggers

AutoHealActions

名称 说明
actionType 要执行的预定义操作。 “CustomAction”
“LogEvent”
“回收”
customAction 要执行的自定义操作。 AutoHealCustomAction
minProcessExecutionTime 进程必须执行的最短时间
执行操作之前
字符串

AutoHealCustomAction

名称 说明
exe 要运行的可执行文件。 字符串
parameters 可执行文件的参数。 string

AutoHealTriggers

名称 说明
privateBytesInKB 基于专用字节的规则。 int
请求 基于请求总数的规则。 RequestsBasedTrigger
slowRequests 基于请求执行时间的规则。 SlowRequestsBasedTrigger
slowRequestsWithPath 基于具有路径的多个慢速请求规则的规则 SlowRequestsBasedTrigger[]
statusCodes 基于状态代码的规则。 StatusCodesBasedTrigger[]
statusCodesRange 基于状态代码范围的规则。 StatusCodesRangeBasedTrigger[]

RequestsBasedTrigger

名称 说明 Value
count 请求计数。 int
timeInterval 时间间隔。 字符串

SlowRequestsBasedTrigger

名称 说明 Value
count 请求计数。 int
path 请求路径。 string
timeInterval 时间间隔。 string
timeTaken 花费的时间。 字符串

StatusCodesBasedTrigger

名称 说明 Value
count 请求计数。 int
path 请求路径 string
status HTTP 状态代码。 int
subStatus 请求子状态。 int
timeInterval 时间间隔。 字符串
win32Status Win32 错误代码。 int

StatusCodesRangeBasedTrigger

名称 说明 Value
count 请求计数。 int
path string
statusCodes HTTP 状态代码。 string
timeInterval 时间间隔。 字符串

ConnStringInfo

名称 说明
connectionString 连接字符串值。 string
name 连接字符串的名称。 string
type 数据库的类型。 “ApiHub”
“Custom”
“DocDb”
“EventHub”
“MySql”
“NotificationHub”
“PostgreSQL”
'RedisCache'
'SQLAzure'
'SQLServer'
“ServiceBus”

CorsSettings

名称 说明
allowedOrigins 获取或设置应允许进行跨源的源列表
调用 (,例如: http://example.com:12345) 。 使用“*”,允许所有来源。
string[]
supportCredentials 获取或设置是否允许使用凭据的 CORS 请求。 请参阅
https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS#Requests_with_credentials
以获取更多详细信息。
bool

试验

名称 说明
rampUpRules 增加规则的列表。 RampUpRule[]

RampUpRule

名称 说明
actionHostName 流量将重定向到的槽的主机名(如果决定)。 例如,myapp-stage.azurewebsites.net。 字符串
changeDecisionCallbackUrl 可以在 TiPCallback 站点扩展中提供可指定 URL 的自定义决策算法。 有关基架和合同,请参阅 TiPCallback 站点扩展。
https://www.siteextensions.net/packages/TiPCallback/
字符串
changeIntervalInMinutes 指定重新计算 ReroutePercentage 的间隔(以分钟为单位)。 int
changeStep 在自动增加方案中,这是添加 ReroutePercentage /删除的步骤,直到达到 \nMinReroutePercentage
MaxReroutePercentage. .\n自定义决策算法中指定的 ChangeIntervalInMinutes每 N 分钟检查一次站点指标
可以在 TiPCallback 站点扩展中提供可在 中指定的 ChangeDecisionCallbackUrlURL。
int
maxReroutePercentage 指定 ReroutePercentage 将保留的上限。 int
minReroutePercentage 指定 ReroutePercentage 将保留的下限。 int
name 路由规则的名称。 建议的名称是指向将在试验中接收流量的槽。 字符串
reroutePercentage 将重定向到 ActionHostName的流量的百分比。 int

HandlerMapping

名称 说明
参数 要传递给脚本处理器的命令行参数。 字符串
扩展 使用此扩展的请求将使用指定的 FastCGI 应用程序进行处理。 string
scriptProcessor FastCGI 应用程序的绝对路径。 字符串

IpSecurityRestriction

名称 说明
action 允许或拒绝对此 IP 范围的访问。 字符串
description IP 限制规则说明。 字符串
headers IP 限制规则标头。
X-Forwarded-Host (https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Forwarded-Host#Examples) 。
匹配的逻辑为 。
- 如果属性为 null 或空 (默认) ,则允许所有主机 (或缺少) 。
- 使用序号-ignore-case ((不包括端口号) )比较值。
- 允许使用子域通配符,但与根域不匹配。 例如,*.contoso.com 匹配子域 foo.contoso.com
但不是根域 contoso.com 或多级 foo.bar.contoso.com
- 允许 Unicode 主机名,但会转换为 Punycode 进行匹配。

X-Forwarded-for (https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Forwarded-For#Examples) 。
匹配的逻辑为 。
- 如果属性为 null 或空 (默认) ,则允许任何转发的 for 链 (或缺少) 。
- 如果任何地址 (链中不包括端口号) (逗号分隔) 与 属性定义的 CIDR 匹配。

X-Azure-FDID 和 X-FD-HealthProbe。
匹配逻辑完全匹配。
对象 (object)
ipAddress 安全限制的有效 IP 地址。
它可以采用纯 ipv4 地址的形式, (所需的 SubnetMask 属性) 或
CIDR 表示法,例如 ipv4/mask (前导位匹配) 。 对于 CIDR,
不得指定 SubnetMask 属性。
string
name IP 限制规则名称。 string
priority IP 限制规则的优先级。 int
subnetMask 限制的有效 IP 地址范围的子网掩码。 string
subnetTrafficTag (内部) 子网流量标记 int
标记 定义此 IP 筛选器的用途。 这是为了支持代理上的 IP 筛选。 'Default'
“ServiceTag”
'XffProxy'
vnetSubnetResourceId 虚拟网络资源 ID 字符串
vnetTrafficTag (内部) Vnet 流量标记 int

SiteLimits

名称 说明
maxDiskSizeInMb 允许的最大磁盘大小使用量(以 MB 为单位)。 int
maxMemoryInMb 允许的最大内存使用量(以 MB 为单位)。 int
maxPercentageCpu 允许的最大 CPU 使用率百分比。 int

PushSettings

名称 说明
kind 资源类型。 string
properties PushSettings 资源特定的属性 PushSettingsProperties

PushSettingsProperties

名称 说明
dynamicTagsJson 获取或设置一个 JSON 字符串,其中包含将从推送注册终结点中的用户声明评估的动态标记列表。 string
isPushEnabled 获取或设置一个标志,该标志指示是否启用推送终结点。 需要 bool ()
tagsRequiringAuth 获取或设置一个 JSON 字符串,其中包含要求在推送注册终结点中使用用户身份验证的标记列表。
标记可以包含字母数字字符和以下内容:
'_', '@', '#', '.', ':', '-'.
应在 PushRequestHandler 中执行验证。
string
tagWhitelistJson 获取或设置一个 JSON 字符串,其中包含允许列表中供推送注册终结点使用的标记列表。 string

VirtualApplication

名称 说明
physicalPath 物理路径。 string
preloadEnabled true 如果启用了预加载,则为 ;否则为 false bool
virtualDirectories 虚拟应用程序的虚拟目录。 VirtualDirectory[]
virtualPath 虚拟路径。 字符串

VirtualDirectory

名称 说明
physicalPath 物理路径。 字符串
virtualPath 虚拟应用程序的路径。 string

快速入门模板

以下快速入门模板部署此资源类型。

模板 说明
在应用服务上使用 PostgreSQL 数据库的 Airflow Web 应用

部署到 Azure
用于在应用服务上使用 PostgreSQL 数据库部署 Airflow Web 应用的模板
Azure 中的 EPiserverCMS

部署到 Azure
此模板允许在 Azure 中创建 EpiServerCMS 部署所需的资源
使用 Jenkins 和 Azure Web 应用实现 Java CI/CD

部署到 Azure
这是使用 Jenkins 和 Azure Web 应用的 Java CI/CD 的示例。
Orchard CMS 视频门户 Web 应用

部署到 Azure
此模板提供了一种在启用和配置 Azure 媒体服务模块的情况下,在 Azure 应用服务 Web 应用 上部署 Orchard CMS 的简单方法。
适用于 Azure 事件中心 的 PubNub 实时网关

部署到 Azure
适用于 Azure 的 PubNub 实时网关在 PubNub 数据流网络和Azure 事件中心之间提供实时数据流桥。 - 将其视为 PubNub 和 Azure 之间的双向桥梁!
可缩放的 Umbraco CMS Web 应用

部署到 Azure
此模板提供了一种在 Azure 应用服务 Web 应用 上部署 umbraco CMS Web 应用的简单方法。
简单的 Umbraco CMS Web 应用

部署到 Azure
此模板提供了一种在 Azure 应用服务 Web 应用 上部署 umbraco CMS Web 应用的简单方法。
App 服务上的 WordPress 与应用内 MySQL 配合使用

部署到 Azure
此模板使用应用中的 MySQL 在 Windows App 服务上部署 WordPress Web 应用
企业治理 - AppService、SQL DB、AD、OMS、Runbook

部署到 Azure
企业云采用(无论大小)都需要负责任且高效的治理模型才能从其云部署中获取价值。 CloudWise (解决方案) 的代号,是 Azure 合作伙伴快速入门中提供的复合解决方案,是客户、系统集成商和合作伙伴的采用支持者,可提供可自助的自动化治理和运营解决方案,重点是优化成本、提高应用程序 () 可靠性、降低业务风险。 该解决方案突出了可见性和控制的核心治理支柱。
使用Azure SQL专用终结点的 Web 应用

部署到 Azure
此模板演示如何创建使用指向 Azure SQL 服务器的专用终结点的 Web 应用
Moesif API 分析和盈利

部署到 Azure
该模板会将 Azure API 管理 的 API 调用记录到 Moesif API 分析和盈利平台
从 Azure 逻辑应用调用自定义 API

部署到 Azure
尽管逻辑应用为各种服务提供了数百个连接器,但你可能希望调用运行自己的代码的 API。 托管自己的 Web API 的最简单且最可缩放的方法之一是使用 Azure 应用服务。 此模板为自定义 API 部署 Web 应用,并使用 Azure Active Directory 身份验证保护该 API。
具有 IP 限制的 Web 应用的应用程序网关

部署到 Azure
此模板在 Azure Web 应用前面创建一个应用程序网关,并在 Web 应用上启用了 IP 限制。
使用 Azure SQL 后端应用服务环境

部署到 Azure
此模板创建一个应用服务环境,其中包含Azure SQL后端、专用终结点以及通常在专用/隔离环境中使用的关联资源。
预配在App 服务计划上运行的函数应用

部署到 Azure
此模板在专用托管计划上预配函数应用,这意味着它将像任何App 服务站点一样运行和计费。
具有事件中心和托管标识的 Azure 函数应用

部署到 Azure
他的模板在 Linux 消耗计划上预配 Azure 函数应用,以及事件中心、Azure 存储和 Application Insights。 函数应用能够使用托管标识连接到事件中心和存储帐户
使用 vnet 集成部署 Azure Function Premium 计划

部署到 Azure
此模板允许将启用了区域虚拟网络集成的 Azure Function Premium 计划部署到新创建的虚拟网络。
使用SQL 数据库预配移动应用

部署到 Azure
此模板预配移动应用、SQL 数据库和通知中心。 它在移动应用中为数据库和通知中心配置连接字符串。
具有专用终结点的 Web 应用

部署到 Azure
此模板允许你创建 Web 应用并通过专用终结点公开它
使用内部API 管理和 Web 应用应用程序网关

部署到 Azure
应用程序网关将 Internet 流量路由到虚拟网络 (内部模式) API 管理 实例,该实例为 Azure Web 应用中托管的 Web API 提供服务。
使用 Blob 存储连接字符串创建 Azure Web 应用

部署到 Azure
使用 Blob 存储连接字符串创建 Azure Web 应用,模板最初由 Microsoft 的 Jeff Bowles 创作
将诊断日志记录到 Blob 容器的 Web 应用

部署到 Azure
将启用了诊断日志记录的 Web 应用部署到存储帐户 Blob 容器。
在已启用 Java 13 和 Tomcat 9 的 Azure 上创建 Web 应用

部署到 Azure
此模板在已启用 Java 13 和 Tomcat 9 的 Azure 上创建 Web 应用,使你可以在 Azure 中运行 Java 应用程序。 模板由 Microsoft 的 Donovan Brown 创作。
Web 应用(带 Application Insights 发送到 Log Analytics)

部署到 Azure
此模板将帮助支持 microsoft.insights/components 的新 API 版本。 从 2020-02-02-preview 开始,创建 Application Inisghts 时需要 WorkspaceID。此模板将部署App 服务计划、App 服务、Application Insights、Log Analytics 工作区,并将其全部挂钩在一起。
具有托管标识、SQL Server和 ΑΙ 的 Web 应用

部署到 Azure
为应用 + 数据 + 托管标识 + 监视部署 Azure 基础结构的简单示例
使用模板创建 Web 应用 + Redis 缓存 + SQL DB

部署到 Azure
此模板使用 Redis 缓存和SQL 数据库创建 Azure Web 应用。
使用SQL 数据库预配 Web 应用

部署到 Azure
此模板预配 Web 应用、SQL 数据库、自动缩放设置、警报规则和 App Insights。 它在 Web 应用中为数据库配置连接字符串。
使用模板创建 Web 应用和 Redis 缓存

部署到 Azure
此模板使用 Redis 缓存创建 Azure Web 应用。
具有自定义部署槽位的 Web 应用

部署到 Azure
此模板提供了一种在 Azure Web 应用 上部署具有自定义部署槽位的 Web 应用的简单方法。
在 Linux 上使用 PostgreSQL 的 Airflow Docker Web 应用

部署到 Azure
此模板提供了一种在 Linux Web 应用上使用 Azure Database for PostgreSQL 部署 puckel/docker-airflow 映像 (最新标记) 的简单方法
具有 Azure SQL 的 Linux 上的 Sonarqube Docker Web 应用

部署到 Azure
此模板使用官方 Sonarqube 映像在 Azure 应用服务 Web 应用 Linux 容器中部署 Sonarqube,并由 Azure SQL 服务器提供支持。
具有 MySQL 的 Linux 上的 Sonarqube Docker Web 应用

部署到 Azure
此模板提供了一种在 Linux Web 应用上使用 Azure Database for MySQL 部署 Sonarqube docker 映像 (alpine 标记) 的简单方法
具有 PostgreSQL 的 Linux 上的 Sonarqube Docker Web 应用

部署到 Azure
此模板提供了一种在 Linux Web 应用上使用 Azure Database for PostgreSQL (预览版部署 Sonarqube docker 映像 (alpine 标记) 的简单方法)
使用 Azure database for MySQL 的 Web 应用

部署到 Azure
此模板提供了一种使用 Azure database for MySQL 在 Azure 应用服务 Web 应用 上部署 Web 应用的简单方法。
Linux 上的 Web 应用和 PostgreSQL

部署到 Azure
此模板提供了一种使用 Azure Database for PostgreSQL 在 Linux 上部署 Web 应用的简单方法。
具有 VNet 注入和专用终结点的 Web 应用

部署到 Azure
通过此模板,可以使用两个 Web 应用(前端和后端)创建安全的端到端解决方案,前端将通过 VNet 注入和专用终结点安全地使用后端

ARM 模板资源定义

可以使用针对以下操作部署站点/配置资源类型:

有关每个 API 版本中更改的属性的列表,请参阅 更改日志

名称属性的选项

sites/config 资源接受基于 name 属性的值的不同属性。 本文介绍设置 name: 'web'时可用的属性。

有关其他选项,请参阅:

资源格式

若要创建 Microsoft.Web/sites/config 资源,请将以下 JSON 添加到模板。

{
  "type": "Microsoft.Web/sites/config",
  "apiVersion": "2021-01-01",
  "name": "web",
  "kind": "string",
  "properties": {
    "acrUseManagedIdentityCreds": "bool",
    "acrUserManagedIdentityID": "string",
    "alwaysOn": "bool",
    "apiDefinition": {
      "url": "string"
    },
    "apiManagementConfig": {
      "id": "string"
    },
    "appCommandLine": "string",
    "appSettings": [
      {
        "name": "string",
        "value": "string"
      }
    ],
    "autoHealEnabled": "bool",
    "autoHealRules": {
      "actions": {
        "actionType": "string",
        "customAction": {
          "exe": "string",
          "parameters": "string"
        },
        "minProcessExecutionTime": "string"
      },
      "triggers": {
        "privateBytesInKB": "int",
        "requests": {
          "count": "int",
          "timeInterval": "string"
        },
        "slowRequests": {
          "count": "int",
          "path": "string",
          "timeInterval": "string",
          "timeTaken": "string"
        },
        "slowRequestsWithPath": [
          {
            "count": "int",
            "path": "string",
            "timeInterval": "string",
            "timeTaken": "string"
          }
        ],
        "statusCodes": [
          {
            "count": "int",
            "path": "string",
            "status": "int",
            "subStatus": "int",
            "timeInterval": "string",
            "win32Status": "int"
          }
        ],
        "statusCodesRange": [
          {
            "count": "int",
            "path": "string",
            "statusCodes": "string",
            "timeInterval": "string"
          }
        ]
      }
    },
    "autoSwapSlotName": "string",
    "azureStorageAccounts": {},
    "connectionStrings": [
      {
        "connectionString": "string",
        "name": "string",
        "type": "string"
      }
    ],
    "cors": {
      "allowedOrigins": [ "string" ],
      "supportCredentials": "bool"
    },
    "defaultDocuments": [ "string" ],
    "detailedErrorLoggingEnabled": "bool",
    "documentRoot": "string",
    "experiments": {
      "rampUpRules": [
        {
          "actionHostName": "string",
          "changeDecisionCallbackUrl": "string",
          "changeIntervalInMinutes": "int",
          "changeStep": "int",
          "maxReroutePercentage": "int",
          "minReroutePercentage": "int",
          "name": "string",
          "reroutePercentage": "int"
        }
      ]
    },
    "ftpsState": "string",
    "functionAppScaleLimit": "int",
    "functionsRuntimeScaleMonitoringEnabled": "bool",
    "handlerMappings": [
      {
        "arguments": "string",
        "extension": "string",
        "scriptProcessor": "string"
      }
    ],
    "healthCheckPath": "string",
    "http20Enabled": "bool",
    "httpLoggingEnabled": "bool",
    "ipSecurityRestrictions": [
      {
        "action": "string",
        "description": "string",
        "headers": {},
        "ipAddress": "string",
        "name": "string",
        "priority": "int",
        "subnetMask": "string",
        "subnetTrafficTag": "int",
        "tag": "string",
        "vnetSubnetResourceId": "string",
        "vnetTrafficTag": "int"
      }
    ],
    "javaContainer": "string",
    "javaContainerVersion": "string",
    "javaVersion": "string",
    "keyVaultReferenceIdentity": "string",
    "limits": {
      "maxDiskSizeInMb": "int",
      "maxMemoryInMb": "int",
      "maxPercentageCpu": "int"
    },
    "linuxFxVersion": "string",
    "loadBalancing": "string",
    "localMySqlEnabled": "bool",
    "logsDirectorySizeLimit": "int",
    "managedPipelineMode": "string",
    "managedServiceIdentityId": "int",
    "minimumElasticInstanceCount": "int",
    "minTlsVersion": "string",
    "netFrameworkVersion": "string",
    "nodeVersion": "string",
    "numberOfWorkers": "int",
    "phpVersion": "string",
    "powerShellVersion": "string",
    "preWarmedInstanceCount": "int",
    "publicNetworkAccess": "string",
    "publishingUsername": "string",
    "push": {
      "kind": "string",
      "properties": {
        "dynamicTagsJson": "string",
        "isPushEnabled": "bool",
        "tagsRequiringAuth": "string",
        "tagWhitelistJson": "string"
      }
    },
    "pythonVersion": "string",
    "remoteDebuggingEnabled": "bool",
    "remoteDebuggingVersion": "string",
    "requestTracingEnabled": "bool",
    "requestTracingExpirationTime": "string",
    "scmIpSecurityRestrictions": [
      {
        "action": "string",
        "description": "string",
        "headers": {},
        "ipAddress": "string",
        "name": "string",
        "priority": "int",
        "subnetMask": "string",
        "subnetTrafficTag": "int",
        "tag": "string",
        "vnetSubnetResourceId": "string",
        "vnetTrafficTag": "int"
      }
    ],
    "scmIpSecurityRestrictionsUseMain": "bool",
    "scmMinTlsVersion": "string",
    "scmType": "string",
    "tracingOptions": "string",
    "use32BitWorkerProcess": "bool",
    "virtualApplications": [
      {
        "physicalPath": "string",
        "preloadEnabled": "bool",
        "virtualDirectories": [
          {
            "physicalPath": "string",
            "virtualPath": "string"
          }
        ],
        "virtualPath": "string"
      }
    ],
    "vnetName": "string",
    "vnetPrivatePortsCount": "int",
    "vnetRouteAllEnabled": "bool",
    "websiteTimeZone": "string",
    "webSocketsEnabled": "bool",
    "windowsFxVersion": "string",
    "xManagedServiceIdentityId": "int"
  }
}

属性值

sites/config-web

名称 说明 Value
type 资源类型 “Microsoft.Web/sites/config”
apiVersion 资源 API 版本 '2021-01-01'
name 资源名称

了解如何在 JSON ARM 模板中为子资源设置名称和类型。
“Web”
kind 资源类型。 string
properties 核心资源属性 SiteConfig

SiteConfig

名称 说明
acrUseManagedIdentityCreds 将托管标识 Creds 用于 ACR 拉取的标志 bool
acrUserManagedIdentityID 如果使用用户托管标识,则用户托管标识 ClientId string
alwaysOn true如果启用Always On,则为 ;否则为 false bool
apiDefinition 有关应用的正式 API 定义的信息。 ApiDefinitionInfo
apiManagementConfig 链接到应用的 Azure API 管理设置。 ApiManagementConfig
appCommandLine 要启动的应用命令行。 字符串
appSettings 应用程序设置。 NameValuePair[]
autoHealEnabled true 如果启用了“自动愈合”,则为 ;否则为 false bool
autoHealRules 自动愈合规则。 AutoHealRules
autoSwapSlotName 自动交换槽名称。 string
azureStorageAccounts Azure 存储帐户列表。 对象 (object)
connectionStrings 连接字符串。 ConnStringInfo[]
cors 跨源资源共享 (CORS) 设置。 CorsSettings
defaultDocuments 默认文档。 string[]
detailedErrorLoggingEnabled true 如果启用了详细错误日志记录,则为 ;否则为 false bool
documentRoot 文档根目录。 字符串
experiments 这是针对多态类型的解决方法。 试验
ftpsState FTP/FTPS 服务的状态 “AllAllowed”
“Disabled”
“FtpsOnly”
functionAppScaleLimit 网站可以横向扩展到的最大辅助角色数。
此设置仅适用于消耗和弹性高级计划
int
functionsRuntimeScaleMonitoringEnabled 获取或设置一个值,该值指示是否启用函数运行时规模监视。 启用后,
ScaleController 不会直接监视事件源,而是会调用
用于获取缩放状态的运行时。
bool
handlerMappings 处理程序映射。 HandlerMapping[]
healthCheckPath 运行状况检查路径 字符串
http20Enabled Http20Enabled:将网站配置为允许客户端通过 http2.0 进行连接 bool
httpLoggingEnabled true 如果启用了 HTTP 日志记录,则为 ;否则为 false bool
ipSecurityRestrictions main的 IP 安全限制。 IpSecurityRestriction[]
javaContainer Java 容器。 字符串
javaContainerVersion Java 容器版本。 字符串
javaVersion Java 版本。 string
keyVaultReferenceIdentity 用于密钥保管库参考身份验证的标识。 string
限制 网站限制。 SiteLimits
linuxFxVersion Linux 应用框架和版本 string
loadBalancing 站点负载均衡。 “LeastRequests”
“LeastResponseTime”
“PerSiteRoundRobin”
'RequestHash'
“WeightedRoundRobin”
'WeightedTotalTraffic'
localMySqlEnabled true 启用本地 MySQL;否则为 false bool
logsDirectorySizeLimit HTTP 日志目录大小限制。 int
managedPipelineMode 托管管道模式。 “经典”
“Integrated”
managedServiceIdentityId 托管服务标识 ID int
minimumElasticInstanceCount 站点的最小实例计数
此设置仅适用于弹性计划
int
minTlsVersion MinTlsVersion:配置 SSL 请求所需的最低 TLS 版本 '1.0'
'1.1'
'1.2'
netFrameworkVersion .NET Framework版本。 string
nodeVersion Node.js 的版本。 字符串
numberOfWorkers 工作线程数。 int
phpVersion PHP 的版本。 string
powerShellVersion PowerShell 的版本。 字符串
preWarmedInstanceCount 预热实例数。
此设置仅适用于消耗和弹性计划
int
publicNetworkAccess 允许或阻止所有公共流量的属性。 字符串
publishingUsername 发布用户名。 字符串
push 推送终结点设置。 PushSettings
pythonVersion Python 版本。 字符串
remoteDebuggingEnabled true 如果启用了远程调试,则为 ;否则为 false bool
remoteDebuggingVersion 远程调试版本。 字符串
requestTracingEnabled true 如果启用了请求跟踪,则为 ;否则为 false bool
requestTracingExpirationTime 请求跟踪过期时间。 字符串
scmIpSecurityRestrictions scm 的 IP 安全限制。 IpSecurityRestriction[]
scmIpSecurityRestrictionsUseMain scm 使用main的 IP 安全限制。 bool
scmMinTlsVersion ScmMinTlsVersion:配置 SCM 站点的 SSL 请求所需的最低 TLS 版本 '1.0'
'1.1'
'1.2'
scmType SCM 类型。 'BitbucketGit'
'BitbucketHg'
“CodePlexGit”
“CodePlexHg”
'Dropbox'
'ExternalGit'
'ExternalHg'
“GitHub”
'LocalGit'
“None”
“OneDrive”
'Tfs'
“VSO”
'VSTSRM'
tracingOptions 跟踪选项。 string
use32BitWorkerProcess true 使用 32 位工作进程;否则为 false bool
virtualApplications 虚拟应用程序。 VirtualApplication[]
vnetName 虚拟网络名称。 string
vnetPrivatePortsCount 分配给此应用的专用端口数。 这些将在运行时动态分配。 int
vnetRouteAllEnabled 虚拟网络“全部路由”已启用。 这会导致所有出站流量都应用虚拟网络安全组和用户定义的路由。 bool
websiteTimeZone 设置站点用于生成时间戳的时区。 与 Linux 和 Windows App 服务兼容。 设置WEBSITE_TIME_ZONE应用设置优先于此配置。对于 Linux,需要 tz 数据库值 https://www.iana.org/time-zones (,请参阅 https://en.wikipedia.org/wiki/List_of_tz_database_time_zones) 。 对于 Windows,需要 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Time Zones 下列出的时区之一 string
webSocketsEnabled true 如果启用了 WebSocket,则为 ;否则为 false bool
windowsFxVersion Xenon 应用框架和版本 string
xManagedServiceIdentityId 显式托管服务标识 ID int

ApiDefinitionInfo

名称 说明
url API 定义的 URL。 字符串

ApiManagementConfig

名称 说明 Value
id APIM-Api 标识符。 string

NameValuePair

名称 说明
name 对名称。 string
value 对值。 string

AutoHealRules

名称 说明
actions 触发规则时要执行的操作。 AutoHealActions
触发器 描述何时执行自动愈合操作的条件。 AutoHealTriggers

AutoHealActions

名称 说明
actionType 要执行的预定义操作。 “CustomAction”
“LogEvent”
“回收”
customAction 要执行的自定义操作。 AutoHealCustomAction
minProcessExecutionTime 进程必须执行的最短时间
执行操作之前
字符串

AutoHealCustomAction

名称 说明
exe 要运行的可执行文件。 字符串
parameters 可执行文件的参数。 字符串

AutoHealTriggers

名称 说明
privateBytesInKB 基于专用字节的规则。 int
请求 基于请求总数的规则。 RequestsBasedTrigger
slowRequests 基于请求执行时间的规则。 SlowRequestsBasedTrigger
slowRequestsWithPath 基于具有路径的多个慢速请求规则的规则 SlowRequestsBasedTrigger[]
statusCodes 基于状态代码的规则。 StatusCodesBasedTrigger[]
statusCodesRange 基于状态代码范围的规则。 StatusCodesRangeBasedTrigger[]

RequestsBasedTrigger

名称 说明 Value
count 请求计数。 int
timeInterval 时间间隔。 字符串

SlowRequestsBasedTrigger

名称 说明 Value
count 请求计数。 int
path 请求路径。 string
timeInterval 时间间隔。 字符串
timeTaken 花费的时间。 字符串

StatusCodesBasedTrigger

名称 说明 Value
count 请求计数。 int
path 请求路径 字符串
status HTTP 状态代码。 int
subStatus 请求子状态。 int
timeInterval 时间间隔。 字符串
win32Status Win32 错误代码。 int

StatusCodesRangeBasedTrigger

名称 说明 Value
count 请求计数。 int
path string
statusCodes HTTP 状态代码。 string
timeInterval 时间间隔。 字符串

ConnStringInfo

名称 说明
connectionString 连接字符串值。 string
name 连接字符串的名称。 string
type 数据库的类型。 “ApiHub”
“Custom”
“DocDb”
“EventHub”
“MySql”
“NotificationHub”
“PostgreSQL”
'RedisCache'
'SQLAzure'
'SQLServer'
“ServiceBus”

CorsSettings

名称 说明
allowedOrigins 获取或设置应允许进行跨源的源列表
调用 (,例如: http://example.com:12345) 。 使用“*”,允许所有来源。
string[]
supportCredentials 获取或设置是否允许使用凭据的 CORS 请求。 请参阅
https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS#Requests_with_credentials
以获取更多详细信息。
bool

试验

名称 说明
rampUpRules 增加规则的列表。 RampUpRule[]

RampUpRule

名称 说明
actionHostName 流量将重定向到的槽的主机名(如果决定)。 例如,myapp-stage.azurewebsites.net。 字符串
changeDecisionCallbackUrl 可以在 TiPCallback 站点扩展中提供可指定 URL 的自定义决策算法。 有关基架和合同,请参阅 TiPCallback 站点扩展。
https://www.siteextensions.net/packages/TiPCallback/
字符串
changeIntervalInMinutes 指定重新计算 ReroutePercentage 的间隔(以分钟为单位)。 int
changeStep 在自动增加方案中,这是添加 ReroutePercentage /删除的步骤,直到达到 \nMinReroutePercentage
MaxReroutePercentage. .\n自定义决策算法中指定的 ChangeIntervalInMinutes每 N 分钟检查一次站点指标
可以在 TiPCallback 站点扩展中提供可在 中指定的 ChangeDecisionCallbackUrlURL。
int
maxReroutePercentage 指定 ReroutePercentage 将保留的上限。 int
minReroutePercentage 指定 ReroutePercentage 将保留的下限。 int
name 路由规则的名称。 建议的名称是指向将在试验中接收流量的槽。 字符串
reroutePercentage 将重定向到 ActionHostName的流量的百分比。 int

HandlerMapping

名称 说明
参数 要传递给脚本处理器的命令行参数。 字符串
扩展 使用此扩展的请求将使用指定的 FastCGI 应用程序进行处理。 字符串
scriptProcessor FastCGI 应用程序的绝对路径。 string

IpSecurityRestriction

名称 说明
action 允许或拒绝对此 IP 范围的访问。 字符串
description IP 限制规则说明。 string
headers IP 限制规则标头。
X-Forwarded-Host (https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Forwarded-Host#Examples) 。
匹配的逻辑为 。
- 如果属性为 null 或空 (默认) ,则允许所有主机 (或缺少) 。
- 使用序号-ignore-case ((不包括端口号) )比较值。
- 允许使用子域通配符,但与根域不匹配。 例如,*.contoso.com 匹配子域 foo.contoso.com
但不是根域 contoso.com 或多级 foo.bar.contoso.com
- 允许 Unicode 主机名,但会转换为 Punycode 进行匹配。

X-Forwarded-for (https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Forwarded-For#Examples) 。
匹配的逻辑为 。
- 如果属性为 null 或空 (默认) ,则允许任何转发的 for 链 (或缺少) 。
- 如果任何地址 (链中不包括端口号) (逗号分隔) 与 属性定义的 CIDR 匹配。

X-Azure-FDID 和 X-FD-HealthProbe。
匹配逻辑完全匹配。
对象 (object)
ipAddress 安全限制的有效 IP 地址。
它可以采用纯 ipv4 地址的形式, (所需的 SubnetMask 属性) 或
CIDR 表示法,例如 ipv4/mask (前导位匹配) 。 对于 CIDR,
不得指定 SubnetMask 属性。
字符串
name IP 限制规则名称。 字符串
priority IP 限制规则的优先级。 int
subnetMask 限制的有效 IP 地址范围的子网掩码。 字符串
subnetTrafficTag (内部) 子网流量标记 int
标记 定义此 IP 筛选器的用途。 这是为了支持代理上的 IP 筛选。 'Default'
“ServiceTag”
'XffProxy'
vnetSubnetResourceId 虚拟网络资源 ID string
vnetTrafficTag (内部) Vnet 流量标记 int

SiteLimits

名称 说明
maxDiskSizeInMb 允许的最大磁盘大小使用量(以 MB 为单位)。 int
maxMemoryInMb 允许的最大内存使用量(以 MB 为单位)。 int
maxPercentageCpu 允许的最大 CPU 使用率百分比。 int

PushSettings

名称 说明
kind 资源类型。 string
properties PushSettings 资源特定的属性 PushSettingsProperties

PushSettingsProperties

名称 说明
dynamicTagsJson 获取或设置一个 JSON 字符串,其中包含将从推送注册终结点中的用户声明评估的动态标记列表。 string
isPushEnabled 获取或设置一个标志,该标志指示是否启用推送终结点。 需要 bool ()
tagsRequiringAuth 获取或设置一个 JSON 字符串,其中包含要求在推送注册终结点中使用用户身份验证的标记列表。
标记可以包含字母数字字符和以下内容:
'_', '@', '#', '.', ':', '-'.
应在 PushRequestHandler 中执行验证。
string
tagWhitelistJson 获取或设置一个 JSON 字符串,其中包含允许列表中供推送注册终结点使用的标记列表。 string

VirtualApplication

名称 说明
physicalPath 物理路径。 字符串
preloadEnabled true 如果启用了预加载,则为 ;否则为 false bool
virtualDirectories 虚拟应用程序的虚拟目录。 VirtualDirectory[]
virtualPath 虚拟路径。 字符串

VirtualDirectory

名称 说明
physicalPath 物理路径。 字符串
virtualPath 虚拟应用程序的路径。 string

快速入门模板

以下快速入门模板部署此资源类型。

模板 说明
在应用服务上使用 PostgreSQL 数据库的 Airflow Web 应用

部署到 Azure
用于在应用服务上使用 PostgreSQL 数据库部署 Airflow Web 应用的模板
Azure 中的 EPiserverCMS

部署到 Azure
此模板允许在 Azure 中创建 EpiServerCMS 部署所需的资源
使用 Jenkins 和 Azure Web 应用实现 Java CI/CD

部署到 Azure
这是使用 Jenkins 和 Azure Web 应用的 Java CI/CD 的示例。
Orchard CMS 视频门户 Web 应用

部署到 Azure
此模板提供了一种在启用和配置 Azure 媒体服务模块的情况下,在 Azure 应用服务 Web 应用 上部署 Orchard CMS 的简单方法。
适用于 Azure 事件中心 的 PubNub 实时网关

部署到 Azure
适用于 Azure 的 PubNub 实时网关在 PubNub 数据流网络和Azure 事件中心之间提供实时数据流桥。 - 将其视为 PubNub 和 Azure 之间的双向桥梁!
可缩放的 Umbraco CMS Web 应用

部署到 Azure
此模板提供了一种在 Azure 应用服务 Web 应用 上部署 umbraco CMS Web 应用的简单方法。
简单的 Umbraco CMS Web 应用

部署到 Azure
此模板提供了一种在 Azure 应用服务 Web 应用 上部署 umbraco CMS Web 应用的简单方法。
App 服务上的 WordPress 与应用内 MySQL 配合使用

部署到 Azure
此模板使用应用中的 MySQL 在 Windows App 服务上部署 WordPress Web 应用
企业治理 - AppService、SQL DB、AD、OMS、Runbook

部署到 Azure
企业云采用(无论大小)都需要负责任且高效的治理模型才能从其云部署中获取价值。 CloudWise (解决方案) 的代号,是 Azure 合作伙伴快速入门中提供的复合解决方案,是客户、系统集成商和合作伙伴的采用支持者,可提供可自助的自动化治理和运营解决方案,重点是优化成本、提高应用程序 () 可靠性、降低业务风险。 该解决方案突出了可见性和控制的核心治理支柱。
使用Azure SQL专用终结点的 Web 应用

部署到 Azure
此模板演示如何创建使用指向 Azure SQL 服务器的专用终结点的 Web 应用
Moesif API 分析和盈利

部署到 Azure
该模板会将 Azure API 管理 的 API 调用记录到 Moesif API 分析和盈利平台
从 Azure 逻辑应用调用自定义 API

部署到 Azure
尽管逻辑应用为各种服务提供了数百个连接器,但你可能希望调用运行自己的代码的 API。 托管自己的 Web API 的最简单且最可缩放的方法之一是使用 Azure 应用服务。 此模板为自定义 API 部署 Web 应用,并使用 Azure Active Directory 身份验证保护该 API。
具有 IP 限制的 Web 应用的应用程序网关

部署到 Azure
此模板在 Azure Web 应用前面创建一个应用程序网关,并在 Web 应用上启用了 IP 限制。
使用 Azure SQL 后端应用服务环境

部署到 Azure
此模板创建一个应用服务环境,其中包含Azure SQL后端、专用终结点以及通常在专用/隔离环境中使用的关联资源。
预配在 App 服务 计划上运行的函数应用

部署到 Azure
此模板在专用托管计划上预配函数应用,这意味着它将像任何App 服务站点一样运行和计费。
具有事件中心和托管标识的 Azure 函数应用

部署到 Azure
他的模板在 Linux 消耗计划上预配 Azure 函数应用,以及事件中心、Azure 存储和 Application Insights。 函数应用能够使用托管标识连接到事件中心和存储帐户
使用 vnet 集成部署 Azure Function Premium 计划

部署到 Azure
此模板允许将启用了区域虚拟网络集成的 Azure Function Premium 计划部署到新创建的虚拟网络。
使用SQL 数据库预配移动应用

部署到 Azure
此模板预配移动应用、SQL 数据库和通知中心。 它在移动应用中为数据库和通知中心配置连接字符串。
具有专用终结点的 Web 应用

部署到 Azure
此模板允许创建 Web 应用并通过专用终结点公开它
使用内部API 管理和 Web 应用应用程序网关

部署到 Azure
应用程序网关将 Internet 流量路由到虚拟网络 (内部模式) API 管理 实例,该实例为 Azure Web 应用中托管的 Web API 提供服务。
使用 Blob 存储连接字符串创建 Azure Web 应用

部署到 Azure
使用 Blob 存储连接字符串创建 Azure Web 应用,模板最初由 Microsoft 的 Jeff Bowles 创作
将诊断日志记录到 Blob 容器的 Web 应用

部署到 Azure
将启用了诊断日志记录的 Web 应用部署到存储帐户 Blob 容器。
在启用了 Java 13 和 Tomcat 9 的 Azure 上创建 Web 应用

部署到 Azure
此模板在启用了 Java 13 和 Tomcat 9 的 Azure 上创建 Web 应用,使你可以在 Azure 中运行 Java 应用程序。 模板由 Microsoft 的 Donovan Brown 创作。
将 Application Insights 发送到 Log Analytics 的 Web 应用

部署到 Azure
此模板将帮助支持 microsoft.insights/components 的新 API 版本。 从 2020-02-02 开始,创建 Application Inisghts 时需要 WorkspaceID。此模板将部署App 服务计划、App 服务、Application Insights、Log Analytics 工作区并将其全部挂钩在一起。
具有托管标识、SQL Server和 ΑΙ 的 Web 应用

部署到 Azure
为应用 + 数据 + 托管标识 + 监视部署 Azure 基础结构的简单示例
使用模板创建 Web 应用 + Redis 缓存 + SQL DB

部署到 Azure
此模板使用 Redis 缓存和SQL 数据库创建 Azure Web 应用。
使用SQL 数据库预配 Web 应用

部署到 Azure
此模板预配 Web 应用、SQL 数据库、自动缩放设置、警报规则和 App Insights。 它在 Web 应用中为数据库配置连接字符串。
使用模板创建 Web 应用和 Redis 缓存

部署到 Azure
此模板使用 Redis 缓存创建 Azure Web 应用。
具有自定义部署槽位的 Web 应用

部署到 Azure
此模板提供了一种在 Azure Web 应用 上使用自定义部署槽位部署 Web 应用的简单方法。
使用 PostgreSQL 的 Linux 上的 Airflow Docker Web 应用

部署到 Azure
此模板提供了一种在 Linux Web 应用上使用 Azure Database for PostgreSQL 部署 puckel/docker-airflow 映像 (最新标记) 的简单方法
具有 Azure SQL 的 Linux 上的 Sonarqube Docker Web 应用

部署到 Azure
此模板使用官方 Sonarqube 映像并受 Azure SQL 服务器支持,在 Azure 应用服务 Web 应用 Linux 容器中部署 Sonarqube。
使用 MySQL 的 Linux 上的 Sonarqube Docker Web 应用

部署到 Azure
此模板提供了一种在 Linux Web 应用上使用 Azure Database for MySQL 将 Sonarqube docker 映像 (alpine 标记) 部署的简单方法
使用 PostgreSQL 的 Linux 上的 Sonarqube Docker Web 应用

部署到 Azure
此模板提供了一种在 Linux Web 应用上使用 Azure Database for PostgreSQL (预览版部署 Sonarqube docker 映像 (alpine 标记) 的简单方法)
使用 Azure Database for MySQL 的 Web 应用

部署到 Azure
此模板提供了一种使用 Azure Database for MySQL 在 Azure 应用服务 Web 应用 上部署 Web 应用的简单方法。
Linux 上的 Web 应用和 PostgreSQL

部署到 Azure
此模板提供了一种使用 Azure Database for PostgreSQL 在 Linux 上部署 Web 应用的简单方法。
具有 VNet 注入和专用终结点的 Web 应用

部署到 Azure
此模板允许创建包含两个 Web 应用(前端和后端)的安全端到端解决方案,前端将通过 VNet 注入和专用终结点安全地使用后端

Terraform (AzAPI 提供程序) 资源定义

可以使用面向以下操作部署站点/配置资源类型:

  • 资源组

有关每个 API 版本中已更改属性的列表,请参阅 更改日志

名称属性的选项

sites/config 资源根据 name 属性的值接受不同的属性。 本文介绍设置 name: 'web'时可用的属性。

有关其他选项,请参阅:

资源格式

若要创建 Microsoft.Web/sites/config 资源,请将以下 Terraform 添加到模板。

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.Web/sites/config@2021-01-01"
  name = "web"
  parent_id = "string"
  body = jsonencode({
    properties = {
      acrUseManagedIdentityCreds = bool
      acrUserManagedIdentityID = "string"
      alwaysOn = bool
      apiDefinition = {
        url = "string"
      }
      apiManagementConfig = {
        id = "string"
      }
      appCommandLine = "string"
      appSettings = [
        {
          name = "string"
          value = "string"
        }
      ]
      autoHealEnabled = bool
      autoHealRules = {
        actions = {
          actionType = "string"
          customAction = {
            exe = "string"
            parameters = "string"
          }
          minProcessExecutionTime = "string"
        }
        triggers = {
          privateBytesInKB = int
          requests = {
            count = int
            timeInterval = "string"
          }
          slowRequests = {
            count = int
            path = "string"
            timeInterval = "string"
            timeTaken = "string"
          }
          slowRequestsWithPath = [
            {
              count = int
              path = "string"
              timeInterval = "string"
              timeTaken = "string"
            }
          ]
          statusCodes = [
            {
              count = int
              path = "string"
              status = int
              subStatus = int
              timeInterval = "string"
              win32Status = int
            }
          ]
          statusCodesRange = [
            {
              count = int
              path = "string"
              statusCodes = "string"
              timeInterval = "string"
            }
          ]
        }
      }
      autoSwapSlotName = "string"
      azureStorageAccounts = {}
      connectionStrings = [
        {
          connectionString = "string"
          name = "string"
          type = "string"
        }
      ]
      cors = {
        allowedOrigins = [
          "string"
        ]
        supportCredentials = bool
      }
      defaultDocuments = [
        "string"
      ]
      detailedErrorLoggingEnabled = bool
      documentRoot = "string"
      experiments = {
        rampUpRules = [
          {
            actionHostName = "string"
            changeDecisionCallbackUrl = "string"
            changeIntervalInMinutes = int
            changeStep = int
            maxReroutePercentage = int
            minReroutePercentage = int
            name = "string"
            reroutePercentage = int
          }
        ]
      }
      ftpsState = "string"
      functionAppScaleLimit = int
      functionsRuntimeScaleMonitoringEnabled = bool
      handlerMappings = [
        {
          arguments = "string"
          extension = "string"
          scriptProcessor = "string"
        }
      ]
      healthCheckPath = "string"
      http20Enabled = bool
      httpLoggingEnabled = bool
      ipSecurityRestrictions = [
        {
          action = "string"
          description = "string"
          headers = {}
          ipAddress = "string"
          name = "string"
          priority = int
          subnetMask = "string"
          subnetTrafficTag = int
          tag = "string"
          vnetSubnetResourceId = "string"
          vnetTrafficTag = int
        }
      ]
      javaContainer = "string"
      javaContainerVersion = "string"
      javaVersion = "string"
      keyVaultReferenceIdentity = "string"
      limits = {
        maxDiskSizeInMb = int
        maxMemoryInMb = int
        maxPercentageCpu = int
      }
      linuxFxVersion = "string"
      loadBalancing = "string"
      localMySqlEnabled = bool
      logsDirectorySizeLimit = int
      managedPipelineMode = "string"
      managedServiceIdentityId = int
      minimumElasticInstanceCount = int
      minTlsVersion = "string"
      netFrameworkVersion = "string"
      nodeVersion = "string"
      numberOfWorkers = int
      phpVersion = "string"
      powerShellVersion = "string"
      preWarmedInstanceCount = int
      publicNetworkAccess = "string"
      publishingUsername = "string"
      push = {
        kind = "string"
        properties = {
          dynamicTagsJson = "string"
          isPushEnabled = bool
          tagsRequiringAuth = "string"
          tagWhitelistJson = "string"
        }
      }
      pythonVersion = "string"
      remoteDebuggingEnabled = bool
      remoteDebuggingVersion = "string"
      requestTracingEnabled = bool
      requestTracingExpirationTime = "string"
      scmIpSecurityRestrictions = [
        {
          action = "string"
          description = "string"
          headers = {}
          ipAddress = "string"
          name = "string"
          priority = int
          subnetMask = "string"
          subnetTrafficTag = int
          tag = "string"
          vnetSubnetResourceId = "string"
          vnetTrafficTag = int
        }
      ]
      scmIpSecurityRestrictionsUseMain = bool
      scmMinTlsVersion = "string"
      scmType = "string"
      tracingOptions = "string"
      use32BitWorkerProcess = bool
      virtualApplications = [
        {
          physicalPath = "string"
          preloadEnabled = bool
          virtualDirectories = [
            {
              physicalPath = "string"
              virtualPath = "string"
            }
          ]
          virtualPath = "string"
        }
      ]
      vnetName = "string"
      vnetPrivatePortsCount = int
      vnetRouteAllEnabled = bool
      websiteTimeZone = "string"
      webSocketsEnabled = bool
      windowsFxVersion = "string"
      xManagedServiceIdentityId = int
    }
    kind = "string"
  })
}

属性值

sites/config-web

名称 说明 Value
type 资源类型 “Microsoft.Web/sites/config@2021-01-01”
name 资源名称 “web”
parent_id 此资源的父资源的 ID。 类型为的资源的 ID: 站点
kind 资源类型。 string
properties 核心资源属性 SiteConfig

SiteConfig

名称 说明
acrUseManagedIdentityCreds 使用托管标识 Creds 进行 ACR 拉取的标志 bool
acrUserManagedIdentityID 如果使用用户托管标识,则为用户托管标识 ClientId string
alwaysOn true如果启用Always On,则为 ;否则为 false bool
apiDefinition 有关应用的正式 API 定义的信息。 ApiDefinitionInfo
apiManagementConfig 链接到应用的 Azure API 管理设置。 ApiManagementConfig
appCommandLine 要启动的应用命令行。 字符串
appSettings 应用程序设置。 NameValuePair[]
autoHealEnabled true 如果启用了“自动愈合”,则为 ;否则为 false bool
autoHealRules 自动愈合规则。 AutoHealRules
autoSwapSlotName 自动交换槽名称。 string
azureStorageAccounts Azure 存储帐户列表。 对象 (object)
connectionStrings 连接字符串。 ConnStringInfo[]
cors 跨源资源共享 (CORS) 设置。 CorsSettings
defaultDocuments 默认文档。 string[]
detailedErrorLoggingEnabled true 如果启用了详细错误日志记录,则为 ;否则为 false bool
documentRoot 文档根目录。 string
experiments 这是针对多态类型的解决方法。 试验
ftpsState FTP/FTPS 服务的状态 “AllAllowed”
“Disabled”
“FtpsOnly”
functionAppScaleLimit 网站可以横向扩展到的最大辅助角色数。
此设置仅适用于消耗和弹性高级计划
int
functionsRuntimeScaleMonitoringEnabled 获取或设置一个值,该值指示是否启用函数运行时规模监视。 启用后,
ScaleController 不会直接监视事件源,而是会调用
用于获取缩放状态的运行时。
bool
handlerMappings 处理程序映射。 HandlerMapping[]
healthCheckPath 运行状况检查路径 字符串
http20Enabled Http20Enabled:将网站配置为允许客户端通过 http2.0 进行连接 bool
httpLoggingEnabled true 如果启用了 HTTP 日志记录,则为 ;否则为 false bool
ipSecurityRestrictions main的 IP 安全限制。 IpSecurityRestriction[]
javaContainer Java 容器。 string
javaContainerVersion Java 容器版本。 字符串
javaVersion Java 版本。 string
keyVaultReferenceIdentity 用于密钥保管库参考身份验证的标识。 字符串
限制 网站限制。 SiteLimits
linuxFxVersion Linux 应用框架和版本 字符串
负载均衡 站点负载均衡。 “LeastRequests”
“LeastResponseTime”
“PerSiteRoundRobin”
“RequestHash”
“WeightedRoundRobin”
“WeightedTotalTraffic”
localMySqlEnabled true 启用本地 MySQL;否则为 false bool
logsDirectorySizeLimit HTTP 日志目录大小限制。 int
managedPipelineMode 托管管道模式。 “经典”
“集成”
managedServiceIdentityId 托管服务标识 ID int
minimumElasticInstanceCount 站点的最小实例计数数
此设置仅适用于弹性计划
int
minTlsVersion MinTlsVersion:配置 SSL 请求所需的最低 TLS 版本 "1.0"
"1.1"
"1.2"
netFrameworkVersion .NET Framework版本。 字符串
nodeVersion Node.js 的版本。 字符串
numberOfWorkers 工作线程数。 int
phpVersion PHP 的版本。 字符串
powerShellVersion PowerShell 的版本。 字符串
preWarmedInstanceCount 预热实例数。
此设置仅适用于消耗和弹性计划
int
publicNetworkAccess 允许或阻止所有公共流量的属性。 字符串
publishingUsername 发布用户名。 字符串
push 推送终结点设置。 PushSettings
pythonVersion Python 的版本。 string
remoteDebuggingEnabled true 如果启用了远程调试,则为 ;否则为 false bool
remoteDebuggingVersion 远程调试版本。 string
requestTracingEnabled true 如果启用了请求跟踪,则为 ;否则为 false bool
requestTracingExpirationTime 请求跟踪过期时间。 字符串
scmIpSecurityRestrictions scm 的 IP 安全限制。 IpSecurityRestriction[]
scmIpSecurityRestrictionsUseMain scm 使用main的 IP 安全限制。 bool
scmMinTlsVersion ScmMinTlsVersion:配置 SCM 站点的 SSL 请求所需的最低 TLS 版本 "1.0"
"1.1"
"1.2"
scmType SCM 类型。 “BitbucketGit”
“BitbucketHg”
“CodePlexGit”
“CodePlexHg”
“Dropbox”
“ExternalGit”
“ExternalHg”
“GitHub”
“LocalGit”
"None"
“OneDrive”
“Tfs”
“VSO”
“VSTSRM”
tracingOptions 跟踪选项。 string
use32BitWorkerProcess true 使用 32 位工作进程;否则为 false bool
virtualApplications 虚拟应用程序。 VirtualApplication[]
vnetName 虚拟网络名称。 字符串
vnetPrivatePortsCount 分配给此应用的专用端口数。 这些将在运行时动态分配。 int
vnetRouteAllEnabled 虚拟网络启用“全部路由”。 这会导致所有出站流量都应用了虚拟网络安全组和用户定义的路由。 bool
websiteTimeZone 设置站点用于生成时间戳的时区。 与 Linux 和 Windows App 服务兼容。 设置WEBSITE_TIME_ZONE应用设置优先于此配置。对于 Linux,需要 tz 数据库值 https://www.iana.org/time-zones (快速参考,请参阅 https://en.wikipedia.org/wiki/List_of_tz_database_time_zones) 。 对于 Windows,需要 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Time Zones 下列出的时区之一 字符串
webSocketsEnabled true 如果已启用 WebSocket,则为 ;否则为 false bool
windowsFxVersion Xenon 应用框架和版本 string
xManagedServiceIdentityId 显式托管服务标识 ID int

ApiDefinitionInfo

名称 说明
url API 定义的 URL。 字符串

ApiManagementConfig

名称 说明 Value
id APIM-Api 标识符。 string

NameValuePair

名称 说明
name 对名称。 string
value 配对值。 string

AutoHealRules

名称 说明
actions 触发规则时要执行的操作。 AutoHealActions
触发器 描述何时执行自动愈合操作的条件。 AutoHealTriggers

AutoHealActions

名称 说明
actionType 要执行的预定义操作。 “CustomAction”
“LogEvent”
“回收”
customAction 要执行的自定义操作。 AutoHealCustomAction
minProcessExecutionTime 进程必须执行的最短时间
执行操作之前
string

AutoHealCustomAction

名称 说明
exe 要运行的可执行文件。 string
parameters 可执行文件的参数。 字符串

AutoHealTriggers

名称 说明
privateBytesInKB 基于专用字节的规则。 int
请求 基于请求总数的规则。 RequestsBasedTrigger
slowRequests 基于请求执行时间的规则。 SlowRequestsBasedTrigger
slowRequestsWithPath 基于具有路径的多个慢速请求规则的规则 SlowRequestsBasedTrigger[]
statusCodes 基于状态代码的规则。 StatusCodesBasedTrigger[]
statusCodesRange 基于状态代码范围的规则。 StatusCodesRangeBasedTrigger[]

RequestsBasedTrigger

名称 说明 Value
count 请求计数。 int
timeInterval 时间间隔。 字符串

SlowRequestsBasedTrigger

名称 说明 Value
count 请求计数。 int
path 请求路径。 字符串
timeInterval 时间间隔。 string
timeTaken 花费的时间。 string

StatusCodesBasedTrigger

名称 说明 Value
count 请求计数。 int
path 请求路径 string
status HTTP 状态代码。 int
subStatus 请求子状态。 int
timeInterval 时间间隔。 字符串
win32Status Win32 错误代码。 int

StatusCodesRangeBasedTrigger

名称 说明 Value
count 请求计数。 int
path string
statusCodes HTTP 状态代码。 string
timeInterval 时间间隔。 字符串

ConnStringInfo

名称 说明
connectionString 连接字符串值。 string
name 连接字符串的名称。 string
type 数据库的类型。 “ApiHub”
“Custom”
“DocDb”
“EventHub”
“MySql”
“NotificationHub”
“PostgreSQL”
“RedisCache”
“SQLAzure”
“SQLServer”
“ServiceBus”

CorsSettings

名称 说明
allowedOrigins 获取或设置应允许进行跨源的源列表
调用 (例如: http://example.com:12345) 。 使用“*”,允许所有来源。
string[]
supportCredentials 获取或设置是否允许具有凭据的 CORS 请求。 请参阅
https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS#Requests_with_credentials
以获取更多详细信息。
bool

试验

名称 说明
rampUpRules 加速规则列表。 RampUpRule[]

RampUpRule

名称 说明
actionHostName 流量将重定向到的槽的主机名(如果确定)。 例如,myapp-stage.azurewebsites.net。 string
changeDecisionCallbackUrl 可以在 TiPCallback 站点扩展中提供可指定 URL 的自定义决策算法。 有关基架和合同,请参阅 TiPCallback 站点扩展。
https://www.siteextensions.net/packages/TiPCallback/
string
changeIntervalInMinutes 指定重新计算 ReroutePercentage 的间隔(以分钟为单位)。 int
changeStep 在自动加速方案中,这是从 ReroutePercentage 中添加/删除的步骤,直到达到 \nMinReroutePercentage
MaxReroutePercentage. .\n自定义决策算法中指定的 ChangeIntervalInMinutes每 N 分钟检查一次站点指标
可以在 TiPCallback 站点扩展中提供可在 中指定的 ChangeDecisionCallbackUrlURL。
int
maxReroutePercentage 指定 ReroutePercentage 将保留的上边界。 int
minReroutePercentage 指定 ReroutePercentage 将保留的下边界。 int
name 路由规则的名称。 建议的名称是指向将在试验中接收流量的槽。 string
reroutePercentage 将重定向到 ActionHostName的流量的百分比。 int

HandlerMapping

名称 说明
参数 要传递给脚本处理器的命令行参数。 字符串
扩展 将使用指定的 FastCGI 应用程序处理具有此扩展的请求。 字符串
scriptProcessor FastCGI 应用程序的绝对路径。 字符串

IpSecurityRestriction

名称 说明
action 允许或拒绝对此 IP 范围的访问。 string
description IP 限制规则说明。 字符串
headers IP 限制规则标头。
X-Forwarded-Host (https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Forwarded-Host#Examples) 。
匹配的逻辑为 。
- 如果属性为 null 或空 (默认) ,则允许所有主机 (或缺少) 。
- 使用序号-ignore-case ((不包括端口号) )比较值。
- 允许使用子域通配符,但与根域不匹配。 例如,*.contoso.com 匹配子域 foo.contoso.com
但不是根域 contoso.com 或多级 foo.bar.contoso.com
- 允许 Unicode 主机名,但会转换为 Punycode 进行匹配。

X-Forwarded-For (https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Forwarded-For#Examples) 。
匹配的逻辑为 。
- 如果属性为 null 或空 (默认) ,则允许任何 (或缺少) 的转发链。
- 如果任何地址 (链中不包括端口号) (逗号分隔) 与 属性定义的 CIDR 匹配。

X-Azure-FDID 和 X-FD-HealthProbe。
匹配的逻辑完全匹配。
对象 (object)
ipAddress 安全限制的有效 IP 地址。
它可以采用纯 ipv4 地址的形式, (所需的 SubnetMask 属性) 或
CIDR 表示法,例如 ipv4/mask (前导位匹配) 。 对于 CIDR,
不能指定 SubnetMask 属性。
string
name IP 限制规则名称。 string
priority IP 限制规则的优先级。 int
subnetMask 限制的有效 IP 地址范围的子网掩码。 字符串
subnetTrafficTag (内部) 子网流量标记 int
标记 定义此 IP 筛选器的用途。 这是为了支持代理上的 IP 筛选。 “Default”
“ServiceTag”
“XffProxy”
vnetSubnetResourceId 虚拟网络资源 ID 字符串
vnetTrafficTag (内部) Vnet 流量标记 int

SiteLimits

名称 说明
maxDiskSizeInMb 允许的最大磁盘大小使用量(以 MB 为单位)。 int
maxMemoryInMb 允许的最大内存使用量(以 MB 为单位)。 int
maxPercentageCpu 允许的最大 CPU 使用率百分比。 int

PushSettings

名称 说明
kind 资源类型。 string
properties PushSettings 资源特定的属性 PushSettingsProperties

PushSettingsProperties

名称 说明
dynamicTagsJson 获取或设置一个 JSON 字符串,其中包含将从推送注册终结点中的用户声明评估的动态标记列表。 string
isPushEnabled 获取或设置一个标志,该标志指示是否启用推送终结点。 需要 bool ()
tagsRequiringAuth 获取或设置一个 JSON 字符串,其中包含要求在推送注册终结点中使用用户身份验证的标记列表。
标记可以包含字母数字字符和以下内容:
'_', '@', '#', '.', ':', '-'.
应在 PushRequestHandler 中执行验证。
string
tagWhitelistJson 获取或设置一个 JSON 字符串,其中包含允许列表中供推送注册终结点使用的标记列表。 string

VirtualApplication

名称 说明
physicalPath 物理路径。 字符串
preloadEnabled true 如果启用了预加载,则为 ;否则为 false bool
virtualDirectories 虚拟应用程序的虚拟目录。 VirtualDirectory[]
virtualPath 虚拟路径。 string

VirtualDirectory

名称 说明
physicalPath 物理路径。 字符串
virtualPath 虚拟应用程序的路径。 字符串