修改HTTP监听的配置。
接口说明
前提条件
- 您已经创建传统型负载均衡,具体操作,请参见 CreateLoadBalancer 。
- 您已经创建 HTTP 监听,具体操作,请参见 CreateLoadBalancerHTTPListener 。
调试
您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。
授权信息
下表是API对应的授权信息,可以在RAM权限策略语句的Action
元素中使用,用来给RAM用户或RAM角色授予调用此API的权限。具体说明如下:
- 操作:是指具体的权限点。
- 访问级别:是指每个操作的访问级别,取值为写入(Write)、读取(Read)或列出(List)。
- 资源类型:是指操作中支持授权的资源类型。具体说明如下:
- 对于必选的资源类型,用背景高亮的方式表示。
- 对于不支持资源级授权的操作,用
全部资源
表示。
- 条件关键字:是指云产品自身定义的条件关键字。
- 关联操作:是指成功执行操作所需要的其他权限。操作者必须同时具备关联操作的权限,操作才能成功。
操作 | 访问级别 | 资源类型 | 条件关键字 | 关联操作 |
---|---|---|---|---|
slb:SetLoadBalancerHTTPListenerAttribute | update |
|
| 无 |
请求参数
名称 | 类型 | 必填 | 描述 | 示例值 |
---|---|---|---|---|
RegionId | string | 否 | 负载均衡实例的地域 ID。 您可以从地域和可用区列表或通过调用 DescribeRegions 接口获取地域 ID。 | cn-hangzhou |
LoadBalancerId | string | 是 | 负载均衡实例的 ID。 | lb-bp1qjwo61pqz3ah***** |
ListenerPort | integer | 是 | 负载均衡实例前端使用的端口。 取值:1~65535。 | 80 |
Bandwidth | integer | 否 | 监听的带宽峰值。单位:Mbps。取值:
| -1 |
XForwardedFor | string | 否 | 是否通过
| on |
Scheduler | string | 否 | 调度算法。取值:
| wrr |
StickySession | string | 否 | 是否开启会话保持。取值:
| on |
StickySessionType | string | 否 | Cookie 的处理方式。取值:
客户端第一次访问时,负载均衡会在返回请求中植入 Cookie(即在 HTTP/HTTPS 响应报文中插入 SERVERID),下次客户端携带此 Cookie 访问,负载均衡服务会将请求定向转发给之前记录到的后端服务器上。
负载均衡发现用户自定义了 Cookie,将会对原来的 Cookie 进行重写,下次客户端携带新的 Cookie 访问,负载均衡服务会将请求定向转发给之前记录到的后端服务器。 说明
当 StickySession 的值为 on 时,必须指定该参数。
| insert |
CookieTimeout | integer | 否 | Cookie 超时时间。 取值:1~86400 秒。 说明
当 StickySession 为 on 且 StickySessionType 为 insert 时,该参数必选。
| 500 |
Cookie | string | 否 | 服务器上配置的 Cookie。 长度为 1~200 字符,只能包含 ASCII 英文字母和数字字符,不能包含半角逗号(,)、半角分号(;)或空格,也不能以美元符号($)开头。 说明
当 StickySession 为 on 且 StickySessionType 为 server 时,该参数必选。
| testCookie |
HealthCheck | string | 否 | 是否开启健康检查。取值:
| on |
HealthCheckMethod | string | 否 | 监听 HTTP 类型健康检查的健康检查方法。取值:head 或 get。 说明
HealthCheck 值为 on 时才会有效。
| get |
HealthCheckDomain | string | 否 | 用于健康检查的域名,取值:
说明
在 HealthCheck 值为 on 时才会有效。
| 172.XX.XX.16 |
HealthCheckURI | string | 否 | 用于健康检查的 URI。 长度限制为 1~80 字符,只能使用字母、数字、短划线(-)、正斜线(/)、半角句号(.)、百分号(%)、半角问号(?)、井号(#)和 and(&)字符。URI 不能只为正斜线(/),但必须以正斜线(/)开头。 说明
在 HealthCheck 值为 on 时才会有效。
| /test/index.html |
HealthyThreshold | integer | 否 | 健康检查连续成功多少次后,将后端服务器的健康检查状态由 fail 判定为 success。 取值:2~10。 说明
在 HealthCheck 值为 on 时才会有效。
| 4 |
UnhealthyThreshold | integer | 否 | 健康检查连续失败多少次后,将后端服务器的健康检查状态由 success 判定为 fail。 取值:2~10。 说明
在 HealthCheck 值为 on 时才会有效。
| 4 |
HealthCheckTimeout | integer | 否 | 接收来自运行状况检查的响应需要等待的时间。如果后端 ECS 在指定的时间内没有正确响应,则判定为健康检查失败。在 HealthCheck 值为 on 时才会有效。 取值:1~300 秒。 说明
如果 HealthCheckTimeout 的值小于 HealthCheckInterval 的值,则 HealthCheckTimeout 无效,超时时间为 HealthCheckInterval 的值。
| 3 |
HealthCheckInterval | integer | 否 | 健康检查的时间间隔。 取值:1~50 秒。 说明
在 HealthCheck 值为 on 时才会有效。
| 5 |
HealthCheckConnectPort | integer | 否 | 健康检查使用的端口。 取值:1~65535。 说明
当 HealthCheck 值为 on 时才会有效。
| 8080 |
HealthCheckHttpCode | string | 否 | 健康检查正常的 HTTP 状态码,多个状态码用半角逗号(,)分割。 取值:http_2xx、http_3xx、http_4xx或http_5xx。 说明
在 HealthCheck 值为 on 时才会有效。
| http_2xx,http_3xx |
VServerGroup | string | 否 | 是否使用虚拟服务器组。取值:
| on |
VServerGroupId | string | 否 | 虚拟服务器组 ID。 | rsp-cige6j***** |
XForwardedFor_SLBIP | string | 否 | 是否通过
| on |
XForwardedFor_SLBID | string | 否 | 是否通过
| on |
XForwardedFor_proto | string | 否 | 是否通过
| on |
Gzip | string | 否 | 是否开启
| on |
AclId | string | 否 | 监听绑定的访问策略组 ID。 说明
当 AclStatus 参数的值为 on 时,该参数必选。
| acl-uf60jw****** |
AclType | string | 否 | 访问控制类型:
如果开启了白名单访问,但访问策略组中没有添加任何 IP,则负载均衡监听会转发全部请求。
如果开启了黑名单访问,但访问策略组中没有添加任何 IP,则负载均衡监听会转发全部请求。 说明
当 AclStatus 参数的值为 on 时,该参数有效。
| white |
AclStatus | string | 否 | 是否开启访问控制功能。取值:
| off |
IdleTimeout | integer | 否 | 指定连接空闲超时时间,取值范围为1~60秒,默认值为 15 秒。 在超时时间内一直没有访问请求,负载均衡会暂时中断当前连接,直到一下次请求来临时重新建立新的连接。 | 12 |
RequestTimeout | integer | 否 | 指定请求超时时间,取值范围为1~180秒,默认值为 60 秒。 在超时时间内后端服务器一直没有响应,负载均衡将放弃等待,给客户端返回 HTTP 504 错误码。 | 3 |
Description | string | 否 | 设置监听的描述信息。 | test |
XForwardedFor_SLBPORT | string | 否 | 是否通过
| off |
XForwardedFor_ClientSrcPort | string | 否 | 是否通过
| off |
返回参数
示例
正常返回示例
JSON
格式
{
"RequestId": "CEF72CEB-54B6-4AE8-B225-F876FF7BA984"
}
错误码
HTTP status code | 错误码 | 错误信息 | 描述 |
---|---|---|---|
400 | IpVersionConflict | The ip version of this LoadBalancer and the Acl is conflict. | 指定负载均衡的IP版本与ACL支持的IP类型冲突。 |
400 | Operation.NotAllowed | Operation Denied. The HTTP listener does not support this action. | 操作被拒绝,原因是HTTP 类型监听不支持此操作。 |
400 | InvalidParameter.IdleTimeout | The specified IdleTimeout exceeds the limit. | 指定的IdleTimeout无效。请检查参数约束,并在修改后重试。 |
400 | InvalidParameter.RequestTimeout | The specified RequestTimeout exceeds the limit. | 指定的RequestTimeout无效。请检查参数约束,并在修改后重试。 |
400 | ListenerForwardNotSupport | X-Forward-For is not supported to a ipv6 instance. | Ipv6负载均衡实例不支持X-Forward-For。 |
400 | InvalidParameter.RegionNotSupport | The region does not support the parameter: %s. | 当前区域不支持指定参数。 |
400 | OperationFailed.ServerGroupInUse | The VServerGroup or MasterSlaveServerGroup can not be close for this listener. | 操作失败,原因是当前监听不支持关闭服务器组。 |
400 | InvalidParameter.VServerGroupId | The MasterSlaveServerGroup can not be attached to HTTP or HTTPS listener. | HTTP或HTTPS监听不支持挂载主备服务器组。 |
400 | MissingParam.HealthCheckDomain | The HealthCheckDomain is required when HealthCheckHttpVersion is http1.1. | 参数HealthCheckDomain缺失。 |
400 | InvalidParameter.HealthCheckHttpVersion | The param HealthCheckHttpVersion is invalid. | 指定的HealthCheckHttpVersion无效。请检查参数约束,并在修改后重试。 |
400 | QuotaLimitExceeds.AclAttachedToListener | %s. | - |
400 | QuotaLimitExceeds.TotalAclEntry | %s. | - |
400 | AclListenerOverLimit | %s. | - |
400 | Duplicated.AclEntry | %s. | Acl条目重复。 |
400 | InvalidParameter.ForwardCode | The specified ForwardCode is invalid. | 指定的ForwardCode无效。请检查参数约束,并在修改后重试。 |
访问错误中心查看更多错误码。
变更历史
变更时间 | 变更内容概要 | 操作 |
---|---|---|
2023-12-14 | OpenAPI 错误码发生变更、OpenAPI 入参发生变更 | 查看变更详情 |