规则引擎支持的匹配类型与操作
支持的匹配类型
下表为规则引擎支持的各匹配类型说明:
说明:
1. URL Path 支持通配符匹配,例如当 URL Path 的值为
/foo/*/bar
,则 /foo/example/bar
和/foo/demo/bar
都是将命中该规则;2. URL Path、URL Full、查询字符串、文件后缀、文件名称、HTTP 请求头均支持开启忽略大小写(默认为关闭,即大写与小写视为不同值)。
类型 | 说明 | 值(示例) |
HOST | 请求 Host | www.example.com |
URL Path | 请求 URL 路径 | 若需要匹配到 /example/foo/bar 路径,则运算法选择等于 ,值填写:/example/foo/bar ;若需要匹配匹配到 /example 目录以及目录下的所有文件,则运算法选择等于 ,值填写: /example/* 。 |
URL Full | 请求 URL 完整内容,包含协议、域名、URL Path 以及查询字符串 | 若需要完全匹配到 https://www.example.com/foo.jpg 路径,则运算符选择 等于 ,值填写:https://www.example.com/foo.jpg 若需要匹配到 https://www.example.com/foo.jpg 以及携带查询字符串的路径,则运算符选择 正则匹配 ,值填写:https://www.example.com/foo\.jpg($|\?) 若需要匹配到 https://www.example.com/foo.jpg 以及携带查询字符串 test 的路径,则运算符选择 正则匹配 ,值填写 https://www.example.com/foo\.jpg($|\?.*test=) |
查询字符串 | 请求 URL 中的查询字符串 | 参数名:key 参数值:value |
文件后缀 | 请求内容的文件后缀(文件扩展名) | jpg、png、css |
文件名称 | 请求内容的文件名称 | foo.txt |
HTTP 请求头 | HTTP 请求头部 | HTTP 请求头部名称:name HTTP 请求头部值:value |
客户端地理位置 | 客户端 IP 所在国家/地区 | 美国 |
请求协议 | 请求的协议类型 | HTTPS 或 HTTP |
客户端 IP | 请求的客户端 IP | 支持输入 IP 或 IP 段。 ipv4:192.168.0.0 或 192.168.0.0/24。其中,0.0.0.0/0:匹配所有 IPv4 地址。 ipv6:2001:db8:1234::1 或 2001:db8::/32。其中,::/0:匹配所有 IPv6 地址。 |
全部 | 站点任意请求 | N/A |
运算符
类型 | 说明 |
等于 | 请求等于任一指定值(对应匹配类型的值) |
不等于 | 请求不等于任一指定值(对应匹配类型的值) |
存在 | 任一指定值出现在请求中(请求 HTTP 头部名称或查询参数的参数名称) |
不存在 | 任一指定值不出现在请求中(请求 HTTP 头部名称或查询参数的参数名称) |
正则匹配 |
支持的操作
操作是指在规则引擎内的规则,在匹配命中请求后执行的一些列功能配置,下表为规则引擎内支持的操作及匹配类型:
缓存配置
操作 | 说明 | 支持的匹配类型 |
调整资源在节点中缓存的时间长短,优化节点缓存,提升请求资源的加载速度,及时淘汰旧资源。 | HOST URL FULL URL Path 文件名称 文件后缀 | |
调整资源在浏览器缓存的时间长短,优化浏览器缓存,提升请求资源的加载速度。 | HOST URL FULL URL Path 文件名称 文件后缀 查询字符串 客户端地理位置 客户端 IP | |
支持通过调整资源 URL 中的查询字符串和配置忽略大小写,拼接 HTTP 标头等,自定义调整资源 Cache Key,优化节点缓存,根据不同场景响应对应的资源,提升请求资源的加载速度。 | HOST URL FULL URL Path 文件名称 文件后缀 查询字符串 HTTP Request Header 客户端地理位置 客户端 IP | |
配置源站响应状态码在节点的缓存时间,由节点直接响应非2xx异常状态码,减轻源站压力。 | HOST URL FULL URL Path 文件名称 文件后缀 查询字符串 | |
在缓存资源过期之前就回源验证缓存资源是否有效,不用等到过期后再验证,提升站点加速性能,更快响应请求。 | HOST URL FULL URL Path 文件名称 文件后缀 | |
启用离线缓存后,当您的源站故障,即无法正常回源拉取资源时,可使用节点中已缓存的资源(即使资源已过期),直到源站恢复。 | HOST URL FULL URL Path 文件名称 文件后缀 查询字符串 HTTP Request Header 客户端地理位置 客户端 IP |
网络优化
操作 | 说明 | 支持的匹配类型 |
支持 HTTP/2 (HTTP 2.0) 请求,加速站点、提升 Web 性能。 | HOST | |
支持 HTTP/3 (QUIC) 请求,使用 HTTP/3 (QUIC) 加速站点请求,提升数据传输效率及安全性。 | HOST | |
支持 WebSocket 协议,使用 WebSocket 协议使得服务端可主动向客户端推送数据。 | HOST | |
最大上传大小即客户端用户单次请求中可以上传的数据的最大值。通过限制最大上传大小,可在一定程度上提升数据传输速率,优化网络传输。 | HOST URL FULL URL Path 文件名称 文件后缀 查询字符串 HTTP Request Header | |
节点对资源进行 Gzip 或 Brotli 压缩,减小传输文件大小,提升请求资源的加载速度。 | HOST | |
智能加速,即动态智能路由加速。启用此功能后,我们将实时检测节点网络延迟,通过智能算法选择最佳传输路径,以更快、更稳定、更安全的方式处理客户端用户的请求,不论是静态资源还是动态资源请求。
通过智能动态路由,将最大限度降低网络延迟、连接错误和请求失败等问题。 | HOST | |
支持以 HTTP/2 协议请求回源。 | HOST | |
您可以根据网络链路情况以及源站数据处理能力,合理设置回源请求超时时间,保证请求能够正常回源。回源超时时间的定义为节点发起回源请求,源站在多长时间内无数据响应则节点可以判定为超时,并主动断开与源站的连接。 | HOST |
HTTPS 优化
操作 | 说明 | 支持的匹配类型 |
将客户端 HTTP 请求通过301/302重定向至 HTTPS,最终以 HTTPS 访问 EdgeOne。 | HOST | |
强制客户端(浏览器等)使用 HTTPS 与边缘节点创建链接,全局加密网站。 | HOST | |
按需配置客户端与边缘服务器 TLS 握手时允许使用的协议版本和密码套件。 | HOST | |
TLS 握手时发送事先缓存的 OCSP 响应以提高握手效率。 | HOST | |
指定 EdgeOne 在回源时所使用的请求协议。 | HOST |
修改 HTTP 头
操作 | 说明 | 支持的匹配类型 |
自定义变更/增加/删除 HTTP 响应头(从节点响应客户端用户时的 HTTP 响应头)。 | HOST URL FULL URL Path 文件名称 文件后缀 查询字符串 客户端地理位置 客户端 IP | |
自定义头部携带真实客户端 IP 信息回源站。 | HOST URL FULL URL Path 文件名称 文件后缀 查询字符串 HTTP Request Header 客户端地理位置 客户端 IP | |
自定义头部携带客户端 IP 地理位置信息回源站。 | HOST 客户端地理位置 客户端 IP | |
自定义变更/增加/删除 HTTP 请求头(从节点向源站请求回源时的 HTTP 请求头)。 | HOST URL FULL URL Path 文件名称 文件后缀 查询字符串 HTTP Request Header 客户端地理位置 客户端 IP | |
重写 Host 头字段。若您的回源 Host 与负载均衡任务中接入的加速域名不同,可使用此功能重写 Host 至实际回源 Host。 | HOST URL FULL URL Path 文件名称 文件后缀 查询字符串 HTTP Request Header 客户端地理位置 客户端 IP 请求协议 |
高级配置
操作 | 说明 | 支持的匹配类型 |
节点通过响应特定状态码将客户端请求 URL 重定向到目标 URL。 | HOST URL FULL URL Path 文件名称 文件后缀 查询字符串 HTTP Request Header 客户端地理位置 客户端 IP | |
一种访问控制策略,通过配置鉴权规则进行访问校验,过滤不合法的访问请求。可有效防止站点资源被恶意盗刷,保护您的业务内容。 | HOST URL FULL URL Path 文件名称 文件后缀 查询字符串 HTTP Request Header | |
修改源站 | 配置主备源,分路径,分区域等复杂回源策略。 | HOST + 以下任意匹配类型 URL Path 客户端地理位置 客户端 IP HTTP Request Header 查询字符串 文件后缀 请求协议 |
将节点收到的用户请求 URL,按照指定规则,在节点向源站发起请求时重写到源站上的目标 URL,不影响节点的缓存标识(Cache Key)。 | HOST URL FULL URL Path 文件名称 文件后缀 查询字符串 HTTP Request Header 客户端地理位置 客户端 IP | |
自定义设置回源请求时,是否包含请求中原有的查询字符串和 Cookie。默认情况下,回源时会保留请求中原有的全部查询字符串和 Cookie。 | HOST URL FULL URL Path 文件名称 文件后缀 查询字符串 HTTP Request Header 客户端地理位置 客户端 IP | |
请求回源时跟随源站服务器的302/301重定向,可指定最大重定向次数(默认为3次,支持设置1-5次)。 | HOST URL FULL URL Path 文件名称 文件后缀 查询字符串 HTTP Request Header 客户端地理位置 客户端 IP | |
当源站响应指定错误状态码时,返回302状态码跳转到对应的自定义页面。 | HOST URL FULL URL Path 文件名称 文件后缀 查询字符串 HTTP Request Header 客户端地理位置 客户端 IP | |
开启后支持分片回源,有助于减少大文件回源消耗,缩短响应时间。 | HOST URL FULL URL Path 文件名称 文件后缀 查询字符串 HTTP Request Header | |
HTTP 应答功能由规则引擎支持,当匹配到对应条件,则由 EdgeOne 节点直接应答指定的状态码和页面内容。 | HOST URL FULL URL Path 文件名称 文件后缀 查询字符串 HTTP Request Header 客户端地理位置 请求协议 客户端 IP 全部(站点任意请求) |