支持字段和运算符
您可以通过负载均衡规则支持的字段,使用表达式生成器或者使用表达式编辑器,自定义您业务需求的规则。
表达式生成器支持字段
字段 | 说明 |
客户端IP | 客户端来源IP。 |
Cookie值 | HTTP Cookie。 |
主机名 | 请求的访问Host。 |
标头 | HTTP请求头部。 |
URI | HTTP URI。 |
URI查询字符串 | URI查询字符串。 |
URI路径 | HTTP URI Path |
HTTP版本 | HTTP版本。 |
表达式编辑器支持字段
匹配类型 | 匹配类型变量 | 支持的匹配运算符 | 匹配值 | 是否支持区分大小写 |
请求方法 | http.request.method |
| 可选值:[GET|POST|PURGE|PUT|HEAD|OPTIONS|DELETE|PATCH]。 | 否 |
HTTP 版本 | http.request.version | 可选值: [HTTP/1.0|HTTP/1.1|HTTP/2.0|HTTP/3.0]。 | 否 | |
文件名 | http.request.uri.path.file_name | 说明:不包含文件后缀的文件名
| 是 | |
文件扩展名 | http.request.uri.path.extension | 说明:
| 是 | |
源站 | http.origin.address | 源站的域名或者IP地址。 如:example.com.cn或者1.1.1.1。 | 否 | |
IP源地址 | ip.src | 客户端IP地址。如:1.1.1.1。 | 否 | |
国家/地区 | ip.geoip.country | 客户端IP地址归属的国家/地区(ISO 3166-1 Alpha2的国家/地区2位字母码)。 | 否 | |
SSL/HTTPS | http.request.scheme |
| 可选值:[http|https]。 | 否 |
主机名 | http.host |
| 例如:["www1.alibaba.com","www2.alibaba.com"]。 | 否 |
URI | http.request.uri | 例如:/articles/index?section=330688&expand=comments。 | 是 | |
URI 完整 | http.request.full_uri | 例如:https://www.example.org/articles/index?section=330688&expand=comments。 | 是 | |
URI 路径 | http.request.uri.path | 例如:/articles/index。 | 是 | |
URI 查询字符串 | http.request.uri.query | 完整的查询字符串,例如:section=330688&expand=comments。 | 是 | |
URI 指定查询字符串 | http.request.uri.args["session"] | 支持输入指定查询字符串的参数名称,对指定参数的值进行匹配,例如:参数session的值330688。 | 是 | |
Cookie | http.cookie |
| 完整的Cookie内容,例如:session=330688;background=light。 | 是 |
用户代理 | http.user_agent | 例如:curl/7.29.0。 | 是 | |
引用方 | http.referer | 例如:http://refer.com.cn。 | 否 | |
X-Forwarded-For | http.x_forwarded_for | 例如:1.1.1.1,2.2.2.2。 | 是 | |
请求标头 | http.request.headers["session"] | 支持输入指定标头名称,对指定请求标头的值进行匹配,例如:标头session的值330688。 | 是 | |
Cookie 值 | http.request.cookies["session"] | 支持输入指定Cookie参数,对指定Cookie参数的值进行匹配,例如:参数session的值330688。 | 是 |
运算符
运算符名称 | 运算符 | 是否支持取反 | 值类型 | 备注 |
等于 | eq | string | ||
不等于 | ne | string | ||
包含 | contains | 支持 | string | 包含字符串。 |
与正则表达式匹配 | matches | 支持 | string | 正则匹配: 仅bussiness和enterprise套餐支持正则匹配。 |
值为其中任意一项 | in | 支持 | array | 值为其中任意一项:
|
字符串开头为 | starts_with | 支持 | string | |
字符串结尾为 | ends_with | 支持 | string | |
长度小于 | len-lt | integer | 字符串长度小于。 | |
长度等于 | len-eq | integer | 字符串长度等于。 | |
长度大于 | len-gt | integer | 字符串长度大于。 | |
在列表中 | in_list | 支持 | integer | 列表需要在账号维度上新建列表,然后在这里调用。 |
存在 | exists | 支持 | bool | 匹配对象有包含key/value键值对的情况下,用于表示子key存在,例如:在header、cookie、查询字符串等场景。 |
大于 | gt | integer | 整数场景下使用。 | |
小于 | lt | integer | 整数场景下使用。 | |
大于等于 | ge | integer | 整数场景下使用。 | |
小于等于 | le | integer | 整数场景下使用。 |