调用SetLoadBalancerHTTPListenerAttribute修改HTTP监听的配置。

调试

您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。

请求参数

名称 类型 是否必选 示例值 描述
Action String SetLoadBalancerHTTPListenerAttribute

要执行的操作。

取值:SetLoadBalancerHTTPListenerAttribute

ListenerPort Integer 80

负载均衡实例前端使用的端口。

取值:1-65535

LoadBalancerId String lb-bp1qjwo61pqz3ahltv0mw

负载均衡实例的ID。

RegionId String cn-hangzhou

负载均衡实例的地域。

您可以从地域和可用区列表或通过调用DescribeRegions接口查询地域ID。

AclId String 123

监听绑定的访问策略组ID。

AclStatus参数的值为on时,该参数必选。

AclStatus String off

是否开启访问控制功能。

取值:on | off

AclType String white

访问控制类型:

  • white: 仅转发来自所选访问控制策略组中设置的IP地址或地址段的请求,白名单适用于应用只允许特定IP访问的场景。

    设置白名单存在一定业务风险。

    一旦设置白名单,就只有白名单中的IP可以访问负载均衡监听。

    如果开启了白名单访问,但访问策略组中没有添加任何IP,则负载均衡监听不会转发请求。

  • black: 来自所选访问控制策略组中设置的IP地址或地址段的所有请求都不会转发,黑名单适用于应用只限制某些特定IP访问的场景。

    如果开启了黑名单访问,但访问策略组中没有添加任何IP,则负载均衡监听会转发全部请求。

AclStatus参数的值为on时,该参数必选。

Bandwidth Integer -1

监听的带宽峰值。取值:-1 | 1-5120

  • -1:对于按流量计费的公网负载均衡实例,可以将带宽峰值设置为-1,即不限制带宽峰值。
  • 1-5120(Mbps):对于按带宽计费的公网负载均衡实例,可以设置每个监听的带宽峰值,但所有监听的带宽峰值之和不能超过实例的带宽峰值。详情参见共享实例带宽
Cookie String B490B5EBF6F3CD402E515D22BCDA1598

服务器上配置的Cookie。

长度为1-200,只能包含ASCII英文字母和数字字符,不能包含逗号、分号或空格,也不能以$开头。

StickySessiononStickySessionTypeserver时,该参数必选。

CookieTimeout Integer 500

Cookie超时时间。

取值:1-86400(秒)

StickySessiononStickySessionTypeinsert时,该参数必选。

Description String test

设置监听的描述信息。

Gzip String on

是否开启Gzip压缩,对特定文件类型进行压缩。

HealthCheck String on

是否开启健康检查。

取值:on|off

HealthCheckConnectPort Integer 8080

健康检查使用的端口。

取值:1-65535

说明HealthCheck值为on时才会有效。
HealthCheckDomain String $_ip

用于健康检查的域名,取值:

  • $_ip: 后端服务器的私网IP。当指定了$_ip或HealthCheckDomain未指定时,负载均衡会使用各后端服务器的私网IP当做健康检查使用的域名。
  • domain:域名长度为1-80字符,只能包含字母、数字、点号(.)和连字符(-)。
HealthCheckHttpCode String http_2xx,http_3xx

健康检查正常的HTTP状态码,多个状态码用逗号(,)分割。

取值:http_2xx|http_3xx |http_4xx|http_5xx

HealthCheckInterval Integer 5

健康检查的时间间隔。

取值:1-50(秒)。

HealthCheckTimeout Integer 3

接收来自运行状况检查的响应需要等待的时间。如果后端ECS在指定的时间内没有正确响应,则判定为健康检查失败。

取值:1-300(秒)。

说明 如果HealthCHeckTimeout的值小于HealthCheckInterval的值,则HealthCHeckTimeout无效,超时时间为HealthCheckInterval的值。
HealthCheckURI String /test/index.html

用于健康检查的URI。

HealthyThreshold Integer 4

健康检查连续成功多少次后,将后端服务器的健康检查状态由fail判定为success

取值:2-10

IdleTimeout Integer 12

指定连接空闲超时时间,取值范围为1-60秒,默认值为15秒。

在超时时间内一直没有访问请求,负载均衡会暂时中断当前连接,直到一下次请求来临时重新建立新的连接。

RequestTimeout Integer 3

指定请求超时时间,取值范围为1-180秒,默认值为60秒。

在超时时间内后端服务器一直没有响应,负载均衡将放弃等待,给客户端返回HTTP 504错误码。

Scheduler String wrr

调度算法。取值:

  • wrr:权重值越高的后端服务器,被轮询到的次数(概率)也越高。
  • lc:除了根据每台后端服务器设定的权重值来进行轮询,同时还考虑后端服务器的实际负载(即连接数)。

    当权重值相同时,当前连接数越小的后端服务器被轮询到的次数(概率)也越高。

  • rr:按照访问顺序依次将外部请求依序分发到后端服务器。
StickySession String on

是否开启会话保持。

取值:on|off

StickySessionType String on

cookie的处理方式。取值:

  • insert:植入Cookie。

    客户端第一次访问时,负载均衡会在返回请求中植入Cookie(即在HTTP/HTTPS响应报文中插入SERVERID),下次客户端携带此Cookie访问,负载均衡服务会将请求定向转发给之前记录到的后端服务器上。

  • server:重写Cookie。

    负载均衡发现用户自定义了Cookie,将会对原来的Cookie进行重写,下次客户端携带新的Cookie访问,负载均衡服务会将请求定向转发给之前记录到的后端服务器。
    说明StickySession的值为on时,必须指定该参数。
UnhealthyThreshold Integer 4

健康检查连续失败多少次后,将后端服务器的健康检查状态由success判定为fail

取值:2-10

VServerGroup String on

是否使用虚拟服务器组。

取值:on|off

VServerGroupId String rsp-cige6j5e7p

服务器组ID。

XForwardedFor String on

是否通过X-Forwarded-For获取客户端请求的真实IP。

取值:on(默认值)| off

XForwardedFor_SLBID String on

是否通过SLB-ID头字段获取负载均衡实例ID。

取值:on | off(默认值)。

该参数如果不设置,则配置为默认值。

XForwardedFor_SLBIP String on

是否通过SLB-IP头字段获取客户端请求的真实IP。

取值:on | off(默认值)。

说明 该参数如果不设置,则配置为默认值。
XForwardedFor_proto String on

是否通过X-Forwarded-Proto头字段获取负载均衡实例的监听协议。

取值:on | off(默认值)。

该参数如果不设置,则配置为默认值。

返回数据

名称 类型 示例值 描述
RequestId String CEF72CEB-54B6-4AE8-B225-F876FF7BA984

请求ID。

示例

请求示例


http(s)://[Endpoint]/?Action=SetLoadBalancerHTTPListenerAttribute
&ListenerPort=80
&LoadBalancerId=lb-bp1qjwo61pqz3ahltv0mw
&<公共请求参数>

正常返回示例

XML 格式

<SetLoadBalancerHTTPListenerAttributeResponse>
			  <RequestId>CEF72CEB-54B6-4AE8-B225-F876FF7BA984</RequestId>
		</SetLoadBalancerHTTPListenerAttributeResponse>

JSON 格式

{
	"RequestId":" CEF72CEB-54B6-4AE8-B225-F876FF7BA984"
}

错误码

访问错误中心查看更多错误码。