本部分为您介绍如何配置重定向转发规则。您可以通过ALB重定向的转发规则,将HTTP请求重定向为HTTPS请求,提升业务安全性;或在业务域名更换时,将旧域名的请求重定向到新域名。
前提条件
说明
- 除了默认转发规则外,每个实例最多可添加 50 个转发规则。
- 根据业务需要,您可以选择仅配置域名、仅配置路径或者同时配置域名和路径。
- 若仅配置域名:URL默认为
/
,ALB 会转发匹配该域名的任意 URL 的请求。例如,您配置域名为www.test.com
, 那么访问www.test.com/lb/
或 www.test.com/lb/create
的请求都会匹配该条转发规则。 - 若仅配置URL:域名默认为
-
,ALB 会转发匹配该 URL 的任意域名的请求。例如,您配置的 URL 为/lb
, 那么访问www.test.com/lb
或 www.test.cn/lb
的请求都会匹配该条转发规则。 - 若同时配置域名和路径:ALB 会转发匹配您配置的域名及 URL 的请求。
操作步骤
- 登录应用型负载均衡控制台。
- 在 实例管理 页面上,选择待配置的 ALB 实例,在 操作 栏点击 配置监听器 。
- 在 监听器 页面,选择待配置的监听器,在 操作 栏点击 编辑转发规则 。
- 在 转发规则 标签页,点击 添加转发规则。
- 在 添加转发规则 页面,同一转发条件只能添加一种转发动作。转发动作选择重定向至,相关字段说明见下表。配置完成后,点击 确定 。
注意
- 若重定向的目标地址与请求相同可能会造成重定向无效,请谨慎操作。
- 如果请求的
content-length
大于监听器的请求体大小限制client_max_body_size
,ALB 会直接返回 413 状态码给客户端,不会再执行重定向动作。如何调整监听器的请求体大小限制,可参考个性化配置。
字段说明
字段 | 是否必填 | 说明 |
---|
域名 | 域名和路径至少填写一项 | - 填写一个域名,若客户端请求的域名与此域名匹配,请求会进行您设置的转发动作。
- ALB 支持配置泛域名和精确域名。
- 不填时,默认域名为
- ,转发所有域名请求。 - 完成转发规则创建后,不支持修改域名。
- 具体规则:
- 域名只允许包含字母、数字、
. 、- 、* ,至少包含一个. ,且不允许以. 开头或结尾。 - 域名长度限制为 1~128 个字符。
- 精确域名:符合域名规范的精确域名,如:
www.test.com 。 - 泛域名:
- 使用
* 代替1个或多个字符。 * 必须在域名开头或结尾。- 同一条域名
* 不能出现两次。 * 前后不能有除了. 以外的字符。
- 示例:
- 合法示例:
*.com 、www.test.* 。 - 非法示例:
*aaa.com 、www.*.com 。
注意 - ALB的域名匹配是对同级域名进行匹配。例如:,
example.com 和www.example.com ,ALB按照两个域名来处理。 - 如果客户端请求的域名匹配与转发规则中的多个同级域名匹配,ALB 根据域名的类型,选择域名的优先级为:精准域名 > 以通配符
* 开头的泛域名 > 以通配符* 结尾的泛域名。如:alb.volc.test.com 同时满足*.volc.test.com 与alb.volc.test.* ,最终会匹配到*.volc.test.com 对应的转发规则。
|
路径 | - 填写一个路径,若客户端的请求路径与此路径匹配,请求会进行您设置的转发动作。
- 不填时,默认路径为
/ ,转发所有路径请求。 - ALB 支持配置非正则表达式和正则表达式。
- 完成转发规则创建后,不支持修改路径。
- 具体规则:
- 路径长度限制为 1~128 个字符。
- 非正则表达式:
- 必须以正斜线
/ 开头。 - 仅允许包含字母、数字和
- 、_ 、/ 、. 、% 、? 、# 、& 、= 等字符,且不可包括// 。
- 正则表达式:
- 必须以
~ 开头,且~ 只能出现一次。 - 支持大小写字母、数字和
. 、- 、_ 、/ 、= 、? 、~ 、^ 、* 、$ 、: 、() 、[] 、+ 、| 等字符。 ~ 开头表示区分大小写的正则匹配,~* 开头表示不区分大小写的正则匹配。说明 仅白名单用户可以使用正则表达式的转发规则。如需体验,请联系客户经理。
|
协议 | 必填 | 选择 HTTPS 协议或 HTTP 协议,若请求匹配设定的域名或路径时,请求会被重定向为 HTTPS 请求或 HTTP 请求。 |
域名 | 非必填 | - 填写一个域名,若请求匹配设定的域名或路径时,请求会被重定向新域名。
- 不填时重定向域名与请求域名一致。
- 具体规则如下:
- 必须以字母或中文开头。
- 只允许包含字母、数字、
. 、- ,至少包含一个. ,且不允许. 开头或结尾,域名的每一级开头或结尾不可以是- 。 - 长度限制为 1~128 个字符。
- 符合域名规范的精确域名,如:
www.test.com 。 - 暂不支持泛域名。
|
端口 | 非必填 | - 您可填写一个端口,若请求匹配您设定的域名或路径时,请求会被重定向至新端口。
- 不填时重定向的端口与请求端口一致。
- 端口输入范围为1~65535。
|
URI | 非必填 | - 填写一个路径,若请求匹配您设定的域名或路径时,请求会被重定向至新的 URI。
- 不填时重定向的 URI 与请求 URI 一致。
- 具体规则:
- 必须以正斜线"/"开头。
- 长度限制为 1~128 个字符。
- 仅允许包含字母、数字和
- 、_ 、/ 、. 、% 、? 、# 、& 、= 等字符,且不可包括// 。
|
状态码 | 必填 | - 填写一个响应状态码,作为重定向动作返回给客户端的响应状态码。
- 默认状态码为301,表示被请求的资源已永久移动到新位置。ALB 支持状态码301、302、307、308。
|
限速(白名单可见) | 非必填 | 除默认转发规则外,当前 ALB 允许您为其他转发规则配置 QPS 限速。该转发规则上的 QPS 超过您设定的限速值后,新建连接请求将被 ALB 丢弃,并会返回给客户端 503 状态码。限速开关默认关闭,点击开启后,您需要输入限速值,输入范围:100~150000。 |
描述 | 非必填 | - 对本条转发规则进行描述。
- 完成转发规则创建后,不支持修改描述。
- 具体规则:
- 长度限制为1~255个字符。
- 必须以字母或中文开头,只能包含中文、字母、数字、英文逗号
, 、英文点号. 、下划线_ 、空格、等号= 、短横线- 、中文逗号, 、中文句号。 。
|
说明
ALB 允许白名单用户为非默认转发规则配置 QPS 限速。 如需体验,请联系客户经理或提交工单。