更新时间:2026-01-16 GMT+08:00

创建转发策略

功能介绍

创建七层转发策略。

接口约束

  1. 只支持七层监听器配置转发策略。

调用方法

请参见如何调用API

URI

POST /v3/{project_id}/elb/l7policies

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

参数解释:项目ID。获取方式请参见获取项目ID

约束限制:不涉及

取值范围:长度为32个字符,由小写字母和数字组成。

默认取值:不涉及

请求参数

表2 请求Header参数

参数

是否必选

参数类型

描述

X-Auth-Token

String

参数解释:IAM鉴权Token。

约束限制:不涉及

取值范围:不涉及

默认取值:不涉及

表3 请求Body参数

参数

是否必选

参数类型

描述

l7policy

CreateL7PolicyOption object

参数解释:创建转发策略参数。

约束限制:不涉及

表4 CreateL7PolicyOption

参数

是否必选

参数类型

描述

action

String

参数解释:转发策略的转发动作。

约束限制

  • REDIRECT_TO_LISTENER的优先级最高,配置了以后,该监听器下的其他policy会失效。

  • 当action为REDIRECT_TO_POOL时,只支持创建在PROTOCOL为HTTP、HTTPS、TERMINATED_HTTPS的listener上。

  • 当action为REDIRECT_TO_LISTENER时,只支持创建在PROTOCOL为HTTP的listener上。

取值范围

  • REDIRECT_TO_POOL:转发到后端服务器组。

  • REDIRECT_TO_LISTENER:重定向到监听器。

  • REDIRECT_TO_URL:重定向到URL。

  • FIXED_RESPONSE:返回固定响应体。

默认取值:不涉及

admin_state_up

Boolean

参数解释:转发策略的管理状态。

约束限制:只支持设置为true。

取值范围:不涉及

默认取值:不涉及

description

String

参数解释:转发策略描述信息。

约束限制:不涉及

取值范围:不涉及

默认取值:不涉及

listener_id

String

参数解释:转发策略对应的监听器ID。

约束限制

  • 当action为REDIRECT_TO_POOL时,只支持创建在PROTOCOL为HTTP或HTTPS的listener上。

  • 当action为REDIRECT_TO_LISTENER时,只支持创建在PROTOCOL为HTTP的listener上。

取值范围:不涉及

默认取值:不涉及

name

String

参数解释:转发策略名称。

约束限制:不涉及

取值范围:不涉及

默认取值:不涉及

position

Integer

参数解释:转发策略的优先级。

约束限制:不支持更新。

取值范围:不涉及

默认取值:不涉及

不支持该字段,请勿使用。

priority

Integer

参数解释:转发策略的优先级。数字越小表示优先级越高。

约束限制

  • 同一个监听器下不同转发策略之间不允许重复的优先级数值。

  • 当关联的监听器的高级转发策略功能(enhance_l7policy_enable)开启后才会生效,未开启传入该字段会报错。

  • 当关联的监听器的高级转发策略功能(enhance_l7policy_enable)未开启,按原有policy的排序逻辑,自动排序。不同域名优先级独立。相同域名下,按path的compare_type排序,精确>前缀>正则,匹配类型相同时,path的长度越长优先级越高。若policy下只有域名rule,没有路径rule,默认path为前缀匹配/。

取值范围

  • 当action为REDIRECT_TO_LISTENER时,支持指定为0-10000。

  • 其它action取值,支持指定为1-10000。

默认取值

  • 若关联的监听器的高级转发策略功能(enhance_l7policy_enable)未开启,且不传入该字段,则新创建的转发策略的优先级的值为1。

  • 当action为REDIRECT_TO_LISTENER时,则新创建的转发策略的优先级的值为0。

  • 其它action取值,新创建的转发策略的优先级的值为同一监听器下已有同方向转发策略的优先级的最大值+1。

    • 若监听器下没有转发策略,则新建的转发策略的优先级为1。

    • 若当前已有同方向转发策略的优先级的最大值是10000,则新创建的转发策略会因超出取值范围10000而失败。此时可通过传入指定priority,或调整原有policy的优先级来避免错误。

project_id

String

参数解释:转发策略所在的项目ID。

约束限制:不涉及

取值范围:不涉及

默认取值:不涉及

redirect_listener_id

String

参数解释:转发到的listener的ID,当action为REDIRECT_TO_LISTENER时必选。

约束限制

  • 只支持protocol为HTTPS/TERMINATED_HTTPS的listener。

  • 不能指定为其他loadbalancer下的listener。

  • 当action为REDIRECT_TO_POOL时,创建或更新时不能传入该参数。

取值范围:不涉及

默认取值:不涉及

redirect_pool_id

String

参数解释:转发到pool的ID。

约束限制

  • 当action为REDIRECT_TO_POOL时生效。

  • 当action为REDIRECT_TO_LISTENER时,传入会报错。

取值范围:不涉及

默认取值:不涉及

redirect_url

String

参数解释:转发到的url。

约束限制:必须满足格式: protocol://host:port/path?query。

取值范围:不涉及

默认取值:不涉及

redirect_url_config

CreateRedirectUrlConfig object

参数解释:转发到的url配置。

约束限制

  • 当监听器的高级转发策略功能(enhance_l7policy_enable)开启后才会生效,未开启传入该字段会报错。

  • 当转发策略的action为REDIRECT_TO_URL时生效,且为必选字段,其他action不可指定,否则报错。

fixed_response_config

CreateFixtedResponseConfig object

参数解释:固定返回页面的配置。

约束限制

  • 当监听器的高级转发策略功能(enhance_l7policy_enable)开启后才会生效,未开启传入该字段会报错。

  • 当action为FIXED_RESPONSE时生效,且为必选字段。其他action不可指定,否则报错。

redirect_pools_extend_config

CreateRedirectPoolsExtendConfig object

参数解释:转发到的后端服务器组的配置。

约束限制:当action为REDIRECT_TO_POOL时生效。

rules

Array of CreateL7PolicyRuleOption objects

参数解释:转发策略关联的转发规则对象。

约束限制

  • rules列表中最多含有10个rule规则(若rule中包含conditions字段,一条condition算一个规则),且列表中type为HOST_NAME,PATH,METHOD,SOURCE_IP的rule不能重复,至多指定一条。

  • 仅支持全量替换。

  • 如果l7policy 是重定向到listener的话,不允许创建l7rule。

表5 CreateRedirectUrlConfig

参数

是否必选

参数类型

描述

protocol

String

参数解释:重定向的协议。

约束限制:不涉及

取值范围

  • HTTP

  • HTTPS

  • ${protocol},表示继承原值(即与被转发请求保持一致)。

默认取值:${protocol}

host

String

参数解释:重定向的主机名。

约束限制:不涉及

取值范围:字符串只能包含英文字母、数字、“-”、“.”,必须以字母、数字开头。

默认取值:${host},表示继承原值(即与被转发请求保持一致)。

port

String

参数解释:重定向到的端口。

约束限制:不涉及

取值范围:不涉及

默认取值:${port},表示继承原值(即与被转发请求保持一致)。

path

String

参数解释:重定向的路径。

约束限制:不涉及

取值范围:只能包含英文字母、数字、_~';@^-%#&$.*+?,=!:|\/()[]{},且必须以"/"开头。其中$1,$2会匹配请求url通配符星号(*)

默认取值:${path},表示继承原值(即与被转发请求保持一致)。

query

String

参数解释:重定向的查询字符串。举例如下:

将query设置为:${query}&name=my_name,则在转发符合条件的URL(如https://www.example.com:8080/elb?type=loadbalancer)时,将会重定向到https://www.example.com:8080/elb?type=loadbalancer&name=my_name。在例子中${query}表示type=loadbalancer。

约束限制:不涉及

取值范围:只能包含英文字母、数字和特殊字符:!$&'()*+,-./:;=?@^_`。字母区分大小写。其中$1,$2会匹配请求url通配符星号(*)

默认取值:${query}表示继承原值(即与被转发请求保持一致)

status_code

String

参数解释:重定向后的返回码。

约束限制:不涉及

取值范围

  • 301

  • 302

  • 303

  • 307

  • 308

默认取值:不涉及

insert_headers_config

CreateInsertHeadersConfig object

参数解释:要添加的请求头参数的配置。

约束限制:不涉及

remove_headers_config

CreateRemoveHeadersConfig object

参数解释:要移除的请求头参数的配置。

约束限制:不涉及

表6 CreateInsertHeadersConfig

参数

是否必选

参数类型

描述

configs

Array of CreateInsertHeaderConfig objects

参数解释:要添加请求头、响应头参数列表。

约束限制:不涉及

表7 CreateInsertHeaderConfig

参数

是否必选

参数类型

描述

key

String

参数解释:请求头、响应头参数名。

约束限制:不涉及

取值范围:1-40个字符,字母a-z(不区分大小写)、数字,短划线-和下划线_。

默认取值:不涉及

value_type

String

参数解释:请求头、响应头参数类别。

约束限制:不涉及

取值范围

  • USER_DEFINED:用户自定义请求头。

  • REFERENCE_HEADER:引用请求头字段中的某一个字段。

  • SYSTEM_DEFINED:表示请求头参数只能使用系统定义的一系列固定值,取值列表见value字段描述。

默认取值:不涉及

value

String

参数解释:请求头、响应头参数的值。

约束限制:当value_type为SYSTEM_DEFINED时,value只可从CLIENT-PORT, CLIENT-IP, ELB-PROTOCOL, ELB-ID,

ELB-PORT, ELB-EIP, ELB-VIP, TLS-PROTOCOL, TLS-CIPHER, CLIENTCERT-SUBJECTDN, CLIENTCERT-ISSUERDN,

CLIENTCERT-FINGERPRINT, CLIENTCERT-CLIENTVERIFY, CLIENTCERT-SERIALNUMBER,

CLIENTCERT, CLIENTCERT-CIPHERS, CLIENTCERT-END, TLS-ALPN-PROTOCOL, TLS-SNI,

TLS-JA3, TLS-JA4中取值。{TLS-PROTOCOL, TLS-CIPHER, CLIENTCERT-SUBJECTDN, CLIENTCERT-ISSUERDN,

CLIENTCERT-FINGERPRINT, CLIENTCERT-CLIENTVERIFY, CLIENTCERT-SERIALNUMBER,

CLIENTCERT, CLIENTCERT-CIPHERS, CLIENTCERT-END, TLS-ALPN-PROTOCOL, TLS-SNI,

TLS-JA3, TLS-JA4}只有HTTPS、quic协议类型的监听器支持

取值范围:1-128个字符,支持ascii码值32<=ch<=127范围内可打印字符,*和英文问号?。不能以空格开头或结尾。

默认取值:不涉及

表8 CreateRemoveHeadersConfig

参数

是否必选

参数类型

描述

configs

Array of CreateRemoveHeaderConfig objects

参数解释:要移除的请求头、响应头参数列表。

约束限制:不涉及

表9 CreateRemoveHeaderConfig

参数

是否必选

参数类型

描述

key

String

参数解释:被移除的请求头的参数名。

约束限制:不能移除以下请求头参数:

connection、upgrade、content-length、transfer-encoding、keep-alive、te、host、cookie、remoteip、authority、x-forwarded-host、x-forwarded-for、x-forwarded-for-port、x-forwarded-tls-certificate-id、x-forwarded-tls-protocol、x-forwarded-tls-cipher、x-forwarded-elb-ip、x-forwarded-port、x-forwarded-elb-id、x-forwarded-elb-vip、x-real-ip、x-forwarded-proto、x-nuwa-trace-ne-in、x-nuwa-trace-ne-out

取值范围:1-40个字符,字母a-z(不区分大小写)、数字,短划线-和下划线_。

默认取值:不涉及

表10 CreateFixtedResponseConfig

参数

是否必选

参数类型

描述

status_code

String

参数解释:返回码。

约束限制:不涉及

取值范围:200-299,400-499,500-599。

默认取值:不涉及

content_type

String

参数解释:返回body的格式。

约束限制:不涉及

取值范围

  • text/plain

  • text/css

  • text/html

  • application/javascript

  • application/json

默认取值:不涉及

message_body

String

参数解释:返回消息内容。

约束限制:不涉及

取值范围:不涉及

默认取值:不涉及

表11 CreateRedirectPoolsExtendConfig

参数

是否必选

参数类型

描述

rewrite_url_enable

Boolean

参数解释:是否开启url重定向。

rewrite_url_config

CreateRewriteUrlConfig object

参数解释:URL重定向配置。

约束限制:当action为REDIRECT_TO_POOL的时候生效。

表12 CreateRewriteUrlConfig

参数

是否必选

参数类型

描述

host

String

参数解释:重定向的域名。

约束限制:不涉及

取值范围:英文字母、数字、“-”、“.”,必须以字母、数字开头。

默认取值:${host},表示继承原值(即与被重写请求host保持一致)。

path

String

参数解释:重定向的请求路径。其中$1-$9会匹配请求url通配符星号(*),当正则匹配分组小于指定数字,则$指定数字结果为空。$后面跟字母,匹配结果均为空,直到下一个特殊字符出现,例如$abc#123,则匹配结果为#123;$后面跟特殊字符则直接输出特殊字符,例如$#匹配结果为$#。

约束限制:不涉及

取值范围:英文字母、数字、_~';@^-%#&$.+?,=!:|/(),且必须以"/"开头。

默认取值:${path} 表示继承原值(即与被重写请求保持一致)。

query

String

参数解释:重定向的查询字符串。其中$1-$9会匹配请求url通配符星号(*),当正则匹配分组小于指定数字,则$指定数字结果为空。$后面跟字母,匹配结果均为空,直到下一个特殊字符出现,例如$abc#123,则匹配结果为#123;$后面跟特殊字符则直接输出特殊字符,例如$#匹配结果为$#。

约束限制:不涉及

取值范围:英文字母、数字和特殊字符:!$&'()+,-./:;=?@^_`。字母区分大小写。

默认取值:${query},表示继承原值(即与被重写请求保持一致)。

表13 CreateL7PolicyRuleOption

参数

是否必选

参数类型

描述

admin_state_up

Boolean

参数解释:转发规则的管理状态。

约束限制:只支持设置为true。

取值范围:不涉及

默认取值:不涉及

type

String

参数解释:转发规则类别。

约束限制

  • 一个l7policy下创建的l7rule的HOST_NAME,PATH,METHOD,SOURCE_IP不能重复。HEADER、QUERY_STRING支持重复的rule配置。

取值范围

  • HOST_NAME:匹配域名。

  • PATH:匹配请求路径。

  • METHOD:匹配请求方法。

  • HEADER:匹配请求头。

  • QUERY_STRING:匹配请求查询参数。

  • SOURCE_IP:匹配请求源IP地址。

  • COOKIE: 匹配cookie信息。

默认取值:不涉及

compare_type

String

参数解释:转发匹配方式。

约束限制

  • type为HOST_NAME时仅支持EQUAL_TO,支持通配符*。

  • type为PATH时可以为REGEX,STARTS_WITH,EQUAL_TO。

  • type为METHOD、SOURCE_IP时,仅支持EQUAL_TO。

  • type为HEADER、QUERY_STRING,仅支持EQUAL_TO,支持通配符*、?。

取值范围

  • EQUAL_TO 表示精确匹配。

  • REGEX 表示正则匹配。

  • STARTS_WITH 表示前缀匹配。

默认取值:不涉及

invert

Boolean

参数解释:是否反向匹配。

约束限制:不涉及

取值范围:true/false。

默认取值:false。

不支持该字段,请勿使用。

key

String

参数解释:匹配项的名称,比如转发规则匹配类型是请求头匹配,则key表示请求头参数的名称。

约束限制:不涉及

取值范围:不涉及

默认取值:不涉及

不支持该字段,请勿使用。

value

String

参数解释:匹配项的值。比如转发规则匹配类型是域名匹配,则value表示域名的值。

约束限制

  • 仅当conditions空时该字段生效。

  • 当转发规则类别type为HOST_NAME时,字符串只能包含英文字母、数字、-、.或*,必须以字母、数字或*开头。若域名中包含*,则*只能出现在开头且必须以*.开始。当*开头时表示通配0~任一个字符。

  • 当转发规则类别type为PATH时,当转发规则的compare_type为STARTS_WITH、EQUAL_TO时,字符串只能包含英文字母、数字、_~';@^-%#&$.*+?,=!:|\/()[]{},且必须以"/"开头。

  • 当转发规则类别type为METHOD、SOURCE_IP、HEADER,QUERY_STRING时,该字段无意义,使用conditions来指定key/value。

取值范围:不涉及

默认取值:不涉及

conditions

Array of CreateRuleCondition objects

参数解释:转发规则的匹配条件。

约束限制

  • 当监听器的高级转发策略功能(enhance_l7policy_enable)开启后才会生效。

  • 若转发规则配置了conditions,字段key、字段value的值无意义。

  • 同一个rule内的conditions列表中所有key必须相同,value不允许重复。

表14 CreateRuleCondition

参数

是否必选

参数类型

描述

key

String

参数解释:匹配项的名称。

约束限制:同一个rule内的conditions列表中所有key必须相同。

取值范围

  • 当转发规则类别type为HOST_NAME、PATH、METHOD、SOURCE_IP时,该字段固定为空字符串。

  • 当转发规则类别type为HEADER时,key表示请求头、响应头参数的名称,value表示请求头、响应头参数的值。key的长度限制1-40字符,只允许包含字母、数字和-_。

  • 当转发规则类别type为QUERY_STRING时,key表示查询参数的名称,value表示查询参数的值。key的长度限制为1-128字符,不支持空格,中括号,大括号,尖括号,反斜杠,双引号,'#','&','|',‘%’,‘~’,字母区分大小写。

默认取值:不涉及

value

String

参数解释:匹配项的值。

约束限制

  • 同一个rule内的conditions列表中所有key必须相同。

  • 同一个rule内的conditions列表中所有value不允许重复。

取值范围

  • 当转发规则类别type为HOST_NAME时,key固定为空字符串,value表示域名的值。value长度1-128字符,字符串只能包含英文字母、数字、-、.或*,必须以字母、数字或*开头,*只能出现在开头且必须以*.开始。

  • 当转发规则类别type为PATH时,key固定为空字符串,value表示请求路径的值。value长度1-128字符。当转发规则的compare_type为STARTS_WITH、EQUAL_TO时,字符串只能包含英文字母、数字、_~';@^-%#&$.*+?,=!:|\/()[]{},且必须以/开头。

  • 当转发规则类别type为HEADER时,key表示请求头参数的名称,value表示请求头参数的值。value长度限制1-128字符,不支持空格,双引号,支持以下通配符:*(匹配0个或更多字符)和?(正好匹配1个字符)。

  • 当转发规则类别type为QUERY_STRING时,key表示查询参数的名称,value表示查询参数的值。value长度限制为1-128字符,不支持空格,中括号,大括号,尖括号,反斜杠,双引号,'#','&','|',‘%’,‘~’,字母区分大小写,支持通配符:*(匹配0个或更多字符)和?(正好匹配1个字符)

  • 当转发规则类别type为METHOD时,key固定为空字符串,value表示请求方式。value取值范围为:GET, PUT,POST,DELETE, PATCH, HEAD, OPTIONS。

  • 当转发规则类别type为SOURCE_IP时,key固定为空字符串,value表示请求源地址。value为CIDR格式,支持ipv4,ipv6。例如192.168.0.2/32,2049::49/64。

默认取值:不涉及

响应参数

状态码:201

表15 响应Body参数

参数

参数类型

描述

request_id

String

参数解释:请求ID。

约束限制:不涉及

取值范围:由数字、小写字母和中划线(-)组成的字符串,自动生成。

默认取值:不涉及

l7policy

L7Policy object

参数解释:l7policy对象

约束限制:不涉及

表16 L7Policy

参数

参数类型

描述

action

String

参数解释:转发策略的转发动作。

取值范围

  • REDIRECT_TO_POOL:转发到后端服务器组;

  • REDIRECT_TO_LISTENER:重定向到监听器;

  • REDIRECT_TO_URL:重定向到URL;

  • FIXED_RESPONSE:返回固定响应体。

admin_state_up

Boolean

参数解释:转发策略的管理状态。

取值范围:只支持设置为true。

description

String

参数解释:转发策略描述信息。

取值范围:不涉及

id

String

参数解释:转发策略ID。

取值范围:不涉及

listener_id

String

参数解释:转发策略所属的监听器ID。

取值范围:不涉及

name

String

参数解释:转发策略名称

取值范围:不涉及

position

Integer

参数解释:转发策略的优先级,不支持更新。

不支持该字段,请勿使用。

priority

Integer

参数解释:转发策略的优先级。数字越小表示优先级越高。

取值范围

  • 当action为REDIRECT_TO_LISTENER时,支持指定为0-10000。

  • 其它action取值,支持指定为1-10000。

project_id

String

参数解释:转发策略所在的项目ID。

取值范围:不涉及

provisioning_status

String

参数解释:转发策略的配置状态。

取值范围

  • ACTIVE: 默认值,表示正常。

redirect_pool_id

String

参数解释:转发到pool的ID。

取值范围:不涉及

redirect_listener_id

String

参数解释:转发到的listener的ID。

取值范围:不涉及

redirect_url

String

参数解释:转发到的url。

取值范围:必须满足格式: protocol://host:port/path?query。

不支持该字段,请勿使用。

rules

Array of RuleRef objects

参数解释:转发策略关联的转发规则列表。

redirect_url_config

RedirectUrlConfig object

参数解释:转发到的url配置。

redirect_pools_config

Array of RedirectPoolsConfig objects

参数解释:转发策略服务器组的权重配置。当监听器的高级转发策略功能(enhance_l7policy_enable)开启后才会生效,未开启传入该字段会报错。

redirect_pools_sticky_session_config

RedirectPoolsStickySessionConfig object

参数解释:配置转发策略关联的服务器组之间会话保持。负载均衡器会根据客户端第一个请求生成一个cookie,后续所有包含这个cookie值的请求都会由同一个pool处理。

redirect_pools_extend_config

RedirectPoolsExtendConfig object

参数解释:转发到的后端服务器组的配置。

fixed_response_config

FixtedResponseConfig object

参数解释:固定返回页面的配置。

created_at

String

参数解释:创建时间。

取值范围:格式:yyyy-MM-dd'T'HH:mm:ss'Z',UTC时区。

updated_at

String

参数解释:更新时间。

取值范围:格式:yyyy-MM-dd'T'HH:mm:ss'Z',UTC时区。

enterprise_project_id

String

参数解释:企业项目ID。

取值范围:不涉及

表17 RuleRef

参数

参数类型

描述

id

String

参数解释:规则ID。

取值范围:不涉及

表18 RedirectUrlConfig

参数

参数类型

描述

protocol

String

参数解释:重定向的协议。

取值范围

  • HTTP

  • HTTPS

  • ${protocol},表示继承原值(即与被转发请求保持一致)。

host

String

参数解释:重定向的主机名。

取值范围:只能包含英文字母、数字、“-”、“.”。且必须以字母、数字开头。

port

String

参数解释:重定向到的端口。

取值范围:不涉及

path

String

参数解释:重定向的路径。

取值范围:支持英文字母、数字、_~';@^-%#&$.*+?,=!:|\/()[]{},且必须以"/"开头。

query

String

参数解释:重定向的查询字符串。举例如下:

将query设置为:${query}&name=my_name,则在转发符合条件的URL(如https://www.example.com:8080/elb?type=loadbalancer)时,将会重定向到https://www.example.com:8080/elb?type=loadbalancer&name=my_name。在例子中${query}表示type=loadbalancer。

取值范围:只能包含英文字母、数字和特殊字符:!$&'()*+,-./:;=?@^_`。字母区分大小写。其中$1,$2会匹配请求url通配符星号(*)

status_code

String

参数解释:重定向后的返回码。

取值范围

  • 301

  • 302

  • 303

  • 307

  • 308

表19 RedirectPoolsConfig

参数

参数类型

描述

pool_id

String

参数解释:所在后端服务器组ID。

取值范围:不涉及

weight

Integer

参数解释:转发策略服务器组的权重。请求将根据该权重进行负载分发到不同的服务器组。权重值越大,分发的请求越多。权重为0的后端不再接受新的请求。

取值范围:0-100

表20 RedirectPoolsStickySessionConfig

参数

参数类型

描述

enable

Boolean

参数解释:转发策略服务器组会话保持开启的开关。

默认取值:false,表示关闭服务器组会话保持。

timeout

Integer

参数解释:会话保持的时间。

取值范围:1-1440(分钟)

表21 RedirectPoolsExtendConfig

参数

参数类型

描述

rewrite_url_enable

Boolean

参数解释:是否开启url重定向。

取值范围:true 开启,false 未开启。

rewrite_url_config

RewriteUrlConfig object

参数解释:URL重定向配置。

表22 RewriteUrlConfig

参数

参数类型

描述

host

String

参数解释:重定向的域名。

取值范围:英文字母、数字、“-”、“.”,必须以字母、数字开头。

path

String

参数解释:重定向的请求路径。其中$1-$9会匹配请求url通配符星号(*),当正则匹配分组小于指定数字,则$指定数字结果为空。$后面跟字母,匹配结果均为空,直到下一个特殊字符出现,例如$abc#123,则匹配结果为#123;$后面跟特殊字符则直接输出特殊字符,例如$#匹配结果为$#。

取值范围:英文字母、数字、_~';@^-%#&$.+?,=!:|/(),且必须以"/"开头。

query

String

参数解释:重定向的查询字符串。其中$1-$9会匹配请求url通配符星号(*),当正则匹配分组小于指定数字,则$指定数字结果为空。$后面跟字母,匹配结果均为空,直到下一个特殊字符出现,例如$abc#123,则匹配结果为#123;$后面跟特殊字符则直接输出特殊字符,例如$#匹配结果为$#。

取值范围:英文字母、数字和特殊字符:!$&'()+,-./:;=?@^_`。字母区分大小写。

表23 FixtedResponseConfig

参数

参数类型

描述

status_code

String

参数解释:返回码。

取值范围:200~299、400~499和500~599。

content_type

String

参数解释:返回body的格式。

取值范围

  • text/plain

  • text/css

  • text/html

  • application/javascript

  • application/json

message_body

String

参数解释:返回消息内容。

取值范围:不涉及

请求示例

创建监听器重定向转发策略

POST https://{ELB_Endpoint}/v3/99a3fff0d03c428eac3678da6a7d0f24/elb/l7policies

{
  "l7policy" : {
    "action" : "REDIRECT_TO_LISTENER",
    "listener_id" : "e2220d2a-3faf-44f3-8cd6-0c42952bd0ab",
    "redirect_listener_id" : "48a97732-449e-4aab-b561-828d29e45050"
  }
}

响应示例

状态码:201

POST操作正常返回。

{
  "l7policy" : {
    "name" : "my policy",
    "redirect_pool_id" : null,
    "description" : "",
    "admin_state_up" : true,
    "rules" : [ {
      "id" : "a8310d08-6d4c-413a-aa45-7e43f8183193"
    } ],
    "project_id" : "0c1503d710984bad92306faea3654dfd",
    "listener_id" : "8b9d7d2c-49dc-43ba-99f5-3bc476bdf10b",
    "redirect_url" : null,
    "redirect_url_config" : null,
    "redirect_pools_config" : [ {
      "weight" : 100,
      "pool_id" : "599fdd99-d908-4dff-9db3-15eec274dfed"
    } ],
    "redirect_pools_sticky_session_config" : {
      "enable" : false,
      "timeout" : 1000
    },
    "fixed_response_config" : null,
    "redirect_listener_id" : null,
    "action" : "REDIRECT_TO_POOL",
    "position" : 100,
    "priority" : 1,
    "provisioning_status" : "ACTIVE",
    "id" : "10ebd807-54b1-4f73-a21e-4e7af939d13b",
    "enterprise_project_id" : "0",
    "created_at" : "2025-04-15T08:36:43Z",
    "updated_at" : "2025-04-15T11:49:56Z",
    "redirect_pools_extend_config" : {
      "rewrite_url_enable" : false,
      "rewrite_url_config" : null,
      "insert_headers_config" : {
        "configs" : [ {
          "key" : "test",
          "value" : "xxx",
          "value_type" : "USER_DEFINED"
        } ]
      },
      "remove_headers_config" : {
        "configs" : [ {
          "key" : "req-trace-id"
        } ]
      },
      "traffic_limit_config" : null,
      "cors_config" : null,
      "traffic_mirror_config" : null
    }
  },
  "request_id" : "54961722be349499068aa73a5f91745a"
}

状态码

状态码

描述

201

POST操作正常返回。

错误码

请参见错误码