修改HTTP监听的配置。

请求参数

名称 类型 是否必须 描述
Action String 要执行的操作。取值:

SetLoadBalancerHTTPListenerAttribute

RegionId String 负载均衡实例的地域。

您可以通过调用 DescribeRegions接口获取地域ID。

LoadBalancerId String 负载均衡实例ID。
ListenerPort Integer 负载均衡实例前端使用的端口,取值:

1-65535

VServerGroup String 是否使用服务器组,取值:

on | off (默认值)

VServerGroupId String 服务器组ID。

VServerGroup的值为on时,该参数必须指定。

Bandwidth Integer 监听的带宽峰值,取值:
  • -1:不限制带宽峰值。
  • [1-5000]:监听的带宽峰值,所有监听的带宽峰值之和不能超过实例的带宽峰值。
AclStatus String 是否开启访问控制功能。

取值:on | off(默认值)

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

    设置白名单存在一定业务风险。一旦设置白名单,就只有白名单中的IP可以访问负载均衡监听。如果开启了白名单访问,但访问策略组中没有添加任何IP,则负载均衡监听会转发全部请求。

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

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

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

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

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

XForwardedFor String 是否开启通过X-Forwarded-For头字段获取来访者真实 IP,取值:

on(默认值) | off

XForwardedFor_SLBIP String 是否通过SLB-IP头字段获取客户端请求的真实IP,取值:

on | off(默认值)

XForwardedFor_SLBID String 是否通过SLB-ID头字段获取负载均衡实例ID,取值:

on | off(默认值)

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

on | off(默认值)

Scheduler String 调度算法。取值:
  • wrr(默认值):权重值越高的后端服务器,被轮询到的次数(概率)也越高。
  • wlc:除了根据每台后端服务器设定的权重值来进行轮询,同时还考虑后端服务器的实际负载(即连接数)。当权重值相同时,当前连接数越小的后端服务器被轮询到的次数(概率)也越高。
  • rr:按照访问顺序依次将外部请求依序分发到后端服务器。
StickySession String 是否开启会话保持,取值:

on | off

StickySessionType String cookie的处理方式。取值:
  • insert:植入Cookie。

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

  • server:重写Cookie。

    负载均衡发现用户自定义了Cookie,将会对原来的Cookie进行重写,下次客户端携带新的Cookie访问,负载均衡服务会将请求定向转发给之前记录到的后端服务器。

    说明
    StickySession的值为on时,必须指定该参数。
CookieTimeout Integer Cookie超时时间。取值:
1-86400(秒)
说明
StickySessiononStickySessionTypeinsert时,该参数必选。
Cookie String 服务器上配置的Cookie。

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

StickySessiononStickySessionTypeserver时,该参数必选。

HealthCheck String 是否开启健康检查。取值:

on | off

HealthCheckDomain String 用于健康检查的域名,取值:
  • $_ip: 后端服务器的私网IP。当指定了IP或该参数未指定时,负载均衡会使用各后端服务器的私网IP当做健康检查使用的域名。
  • domain:域名长度为1-80字符,只能包含字母、数字、点号(.)和连字符(-)。
HealthCheckURI String 用于健康检查的URI。
HealthCheckConnectPort Integer 健康检查使用的端口。取值:
  • -520:使用监听配置的后端服务端口。
  • 1-65535:健康检查的后端服务器的端口。
HealthyThreshold Integer 健康检查连续成功多少次后,将后端服务器的健康检查状态由fail判定为success。

取值:2-10

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

取值:2-10

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

取值:1-300(秒)

说明
如果HealthCHeckTimeout的值小于HealthCheckInterval的值,则HealthCHeckTimeout无效,超时时间为HealthCheckInterval的值。
HealthCheckInterval Integer 健康检查的时间间隔。

取值:1-50(秒)

HealthCheckHttpCode String 健康检查正常的HTTP状态码,多个状态码用逗号分隔。

取值:http_2xx(默认值) | http_3xx | http_4xx | http_5xx

Gzip String

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

取值:on(默认值)| off

返回参数

名称 类型 说明
RequestId String 请求ID。

示例

请求示例

https://slb.aliyuncs.com/?Action=SetLoadBalancerHTTPListenerAttribute
&LoadBalancerId=lb-t4nj5vuz8ish9emfk1f20
&ListenerPort=80
&BackendServerPort=80
&Bandwidth=-1
&HealthCheck=on
&HealthCheckDomain=$_ip
&HealthCheckURI=/test/index.html
&HealthCheckConnectPort=8080
&HealthyThreshold=4
&UnhealthyThreshold=4
&HealthCheckTimeout=3
&HealthCheckInterval=5
&VServerGroupId=rsp-cige6j5e7p
&公共请求参数
返回示例
  • XML格式

    <?xml version="1.0" encoding="UTF-8"?>
    <SetLoadBalancerHTTPListenerAttributeResponse>
    	<RequestId>CEF72CEB-54B6-4AE8-B225-F876FF7BA984</RequestId>
    </SetLoadBalancerHTTPListenerAttributeResponse>
  • JSON格式

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