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

New-AzApplicationGatewayPathRuleConfig

创建应用程序网关路径规则。

语法

SetByResourceId

New-AzApplicationGatewayPathRuleConfig
    -Name <String>
    -Paths <String[]>
    [-BackendAddressPoolId <String>]
    [-BackendHttpSettingsId <String>]
    [-RewriteRuleSetId <String>]
    [-RedirectConfigurationId <String>]
    [-FirewallPolicyId <String>]
    [-DefaultProfile <IAzureContextContainer>]
    [<CommonParameters>]

SetByResource

New-AzApplicationGatewayPathRuleConfig
    -Name <String>
    -Paths <String[]>
    [-BackendAddressPool <PSApplicationGatewayBackendAddressPool>]
    [-BackendHttpSettings <PSApplicationGatewayBackendHttpSettings>]
    [-RewriteRuleSet <PSApplicationGatewayRewriteRuleSet>]
    [-RedirectConfiguration <PSApplicationGatewayRedirectConfiguration>]
    [-FirewallPolicy <PSApplicationGatewayWebApplicationFirewallPolicy>]
    [-DefaultProfile <IAzureContextContainer>]
    [<CommonParameters>]

说明

New-AzApplicationGatewayPathRuleConfig cmdlet 创建应用程序网关路径规则。 此 cmdlet 创建的规则可以添加到 URL 路径映射配置设置的集合中,然后分配给网关。 路径映射配置设置用于应用程序网关负载均衡。

示例

示例 1

$Gateway = Get-AzApplicationGateway -Name "ContosoApplicationGateway"
$AddressPool = New-AzApplicationGatewayBackendAddressPool -Name "ContosoAddressPool" -BackendIPAddresses "192.168.1.1", "192.168.1.2"
$HttpSettings = New-AzApplicationGatewayBackendHttpSetting -Name "ContosoHttpSettings" -Port 80 -Protocol "Http" -CookieBasedAffinity "Disabled"
$PathRuleConfig = New-AzApplicationGatewayPathRuleConfig -Name "base" -Paths "/base" -BackendAddressPool $AddressPool -BackendHttpSettings $HttpSettings
Add-AzApplicationGatewayUrlPathMapConfig -ApplicationGateway $Gateway -Name "ContosoUrlPathMap" -PathRules $PathRuleConfig -DefaultBackendAddressPool $AddressPool -DefaultBackendHttpSettings $HttpSettings

这些命令创建新的应用程序网关路径规则,然后使用 Add-AzApplicationGatewayUrlPathMapConfig cmdlet 将该规则分配给应用程序网关。 为此,第一个命令创建对网关 ContosoApplicationGateway 的对象引用。 此对象引用存储在名为$Gateway的变量中。 接下来的两个命令创建后端地址池和后端 HTTP 设置对象;为了创建路径规则对象,需要这些对象(存储在变量$AddressPool和$HttpSettings中)。 第四个命令创建路径规则对象,并存储在名为$PathRuleConfig的变量中。 第五个命令使用 Add-AzApplicationGatewayUrlPathMapConfig 将这些设置中包含的配置设置和新路径规则添加到 ContosoApplicationGateway。

示例 2

$PathRuleConfig = New-AzApplicationGatewayPathRuleConfig -Name "base" -Paths "/base" -BackendAddressPool $AddressPool -BackendHttpSettings $HttpSettings -FirewallPolicy $firewallPolicy

这些命令创建路径规则,名称为“base”,路径为“/base”,BackendAddressPool 作为$AddressPool,BackendHttpSettings 作为$HttpSettings,FirewallPolicy 作为$firewallPolicy.ngs,以及这些设置中包含的新路径规则到 ContosoApplicationGateway。

参数

-BackendAddressPool

指定要添加到网关路径规则配置设置的后端地址池设置集合的对象引用。 可以使用 New-AzApplicationGatewayBackendAddressPool cmdlet 和如下所示的语法来创建此对象引用: $AddressPool = New-AzApplicationGatewayBackendAddressPool -Name "ContosoAddressPool" -BackendIPAddresses "192.168.1.1", "192.168.1.2" 上述命令将两个 IP 地址(192.16.1.1 和 192.168.1.2)添加到地址池。 请注意,IP 地址用引号括起来,并使用逗号分隔。 然后,生成的变量$AddressPool可用作 DefaultBackendAddressPool 参数的参数值。 后端地址池表示后端服务器上的 IP 地址。 这些 IP 地址应属于虚拟网络子网,或者应该是公共 IP 地址。 如果使用此参数,则不能在同一命令中使用 DefaultBackendAddressPoolId 参数。

参数属性

类型:PSApplicationGatewayBackendAddressPool
默认值:None
支持通配符:False
不显示:False

参数集

SetByResource
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-BackendAddressPoolId

指定可以添加到网关路径规则配置设置的现有后端地址池的 ID。 可以使用 Get-AzApplicationGatewayBackendAddressPool cmdlet 返回地址池 ID。 获得 ID 后,可以使用 DefaultBackendAddressPoolId 参数而不是 DefaultBackendAddressPool 参数。 例如:-DefaultBackendAddressPoolId“/subscriptions/39c54063-01d3-4abf-8f4c-234777bc1f10/resourceGroups/appgw-rg/providers/Microsoft.Network/applicationGateways/appgwtest/backendAddressPools/ContosoAddressPool”后端地址池表示后端服务器上的 IP 地址。 这些 IP 地址应属于虚拟网络子网,或者应该是公共 IP 地址。

参数属性

类型:String
默认值:None
支持通配符:False
不显示:False

参数集

SetByResourceId
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-BackendHttpSettings

指定要添加到网关路径规则配置设置的后端 HTTP 设置集合的对象引用。 可以使用类似于下面的 New-AzApplicationGatewayBackendHttpSettings cmdlet 和语法来创建此对象引用:$HttpSettings = New-AzApplicationGatewayBackendHttpSettings -Name “ContosoHttpSettings” -Port 80 -Protocol “Http” -CookieBasedAffinity “Disabled” 生成的变量, 然后,$HttpSettings可用作 DefaultBackendAddressPool 参数的参数值:-DefaultBackendHttpSettings $HttpSettings 后端 HTTP 设置配置后端池的端口、协议和基于 Cookie 的相关性等属性。 如果使用此参数,则不能在同一命令中使用 DefaultBackendHttpSettingsId 参数。

参数属性

类型:PSApplicationGatewayBackendHttpSettings
默认值:None
支持通配符:False
不显示:False

参数集

SetByResource
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-BackendHttpSettingsId

指定可以添加到网关路径规则配置设置的现有后端 HTTP 设置集合的 ID。 可以使用 Get-AzApplicationGatewayBackendHttpSettings cmdlet 返回 HTTP 设置 ID。 获得 ID 后,可以使用 DefaultBackendHttpSettingsId 参数而不是 DefaultBackendHttpSettings 参数。 例如:-DefaultBackendSettings ID“/subscriptions/39c54063-01d3-4abf-8f4c-234777bc1f10/resourceGroups/appgw-rg/providers/Microsoft.Network/applicationGateways/appgwtest/backendHttpSettingsCollection/ContosoHttpSettings”后端 HTTP 设置配置端口等属性, 后端池的协议和基于 Cookie 的相关性。 如果使用此参数,则不能在同一命令中使用 DefaultBackendHttpSettings 参数。

参数属性

类型:String
默认值:None
支持通配符:False
不显示:False

参数集

SetByResourceId
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-DefaultProfile

用于与 Azure 通信的凭据、帐户、租户和订阅。

参数属性

类型:IAzureContextContainer
默认值:None
支持通配符:False
不显示:False
别名:AzContext, AzureRmContext, AzureCredential

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-FirewallPolicy

指定对顶级防火墙策略的对象引用。 可以使用 New-AzApplicationGatewayWebApplicationFirewallPolicy cmdlet 创建对象引用。 $firewallPolicy = New-AzApplicationGatewayFirewallPolicy -Name“wafPolicy1”-ResourceGroup“rgName”使用上述 cmdlet 创建的防火墙策略可以在路径规则级别引用。 上述命令将创建默认策略设置和托管规则。 用户可以使用 New-AzApplicationGatewayFirewallPolicySettings 和 New-AzApplicationGatewayFirewallPolicyManagedRules 来指定 PolicySettings、ManagedRules,而不是默认值。

参数属性

类型:PSApplicationGatewayWebApplicationFirewallPolicy
默认值:None
支持通配符:False
不显示:False

参数集

SetByResource
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-FirewallPolicyId

指定现有顶级 Web 应用程序防火墙资源的 ID。 可以使用 Get-AzApplicationGatewayWebApplicationFirewallPolicy cmdlet 返回防火墙策略 ID。 获得 ID 后,可以使用 FirewallPolicyId 参数而不是 FirewallPolicy 参数。 例如:-FirewallPolicyId /subscriptions/<subscription-id>/resourceGroups/<resource-group-id>/providers/Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies/<firewallPolicyName>

参数属性

类型:String
默认值:None
支持通配符:False
不显示:False

参数集

SetByResourceId
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-Name

指定此 cmdlet 创建的路径规则配置的名称。

参数属性

类型:String
默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:Named
必需:True
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-Paths

指定一个或多个应用程序网关路径规则。

参数属性

类型:

String[]

默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:Named
必需:True
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-RedirectConfiguration

应用程序网关 RedirectConfiguration

参数属性

类型:PSApplicationGatewayRedirectConfiguration
默认值:None
支持通配符:False
不显示:False

参数集

SetByResource
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-RedirectConfigurationId

应用程序网关 RedirectConfiguration 的 ID

参数属性

类型:String
默认值:None
支持通配符:False
不显示:False

参数集

SetByResourceId
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-RewriteRuleSet

应用程序网关 RewriteRuleSet

参数属性

类型:PSApplicationGatewayRewriteRuleSet
默认值:None
支持通配符:False
不显示:False

参数集

SetByResource
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-RewriteRuleSetId

应用程序网关 RewriteRuleSet 的 ID

参数属性

类型:String
默认值:None
支持通配符:False
不显示:False

参数集

SetByResourceId
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

CommonParameters

此 cmdlet 支持通用参数:-Debug、-ErrorAction、-ErrorVariable、-InformationAction、-InformationVariable、-OutBuffer、-OutVariable、-PipelineVariable、-ProgressAction、-Verbose、-WarningAction 和 -WarningVariable。 有关详细信息,请参阅 about_CommonParameters

输入

None

输出

PSApplicationGatewayPathRule