规则功能能够使用图形化的方式来配置各种条件规则。条件规则支持对用户请求中携带的各种参数信息进行识别,以此来决定某个配置是否对该请求生效,可用于更加灵活、更加精确地控制各种配置策略的执行效果。规则允许您使用相同的基本语法和配置逻辑在不同的产品功能(例如:缓存、重定向、压缩、回源、WAF等)中创建和部署条件规则。
ESA规则
规则允许您使用相同的基本语法和配置逻辑在不同的产品功能(例如:缓存、重定向、压缩、回源、WAF等)中创建和部署条件规则。
注意事项
同一个功能,如果在全局配置和规则上都添加了配置,那么用户请求命中规则条件的时候,规则上的配置优先生效。
单条规则配置(规则条件+功能配置)的长度限制为4k字符。
站点维度上所有的配置信息(包含全局配置和规则配置)限制总大小不超过512K字节(安全防护中的规则配置除外)。
规则名称的长度限制为128字符。
规则模板
ESA产品将一些常见场景的配置设置为规则配置模板,您可以点击模板来快速创建出对应场景的规则配置。
新增规则后,当用户发起资源访问请求时,ESA将根据规则的生效优先级依次进行匹配与执行。
操作步骤
在ESA控制台,选择站点管理,在站点列单击目标站点。
在左侧导航栏,选择
。在规则模板页面,选择重定向到新URL,单击右上角创建。
在自定义规则中,输入要重定向的URI路径,如:
/esa.jpg
。在单一重定向中,输入重定向的完整URL,如:
https://www.aliyun.com
。测试访问,
http://yourDomain/esa.jpg
,返回301状态码,表示重定向生效。
运用ESA规则进行WAF防护
示例-阻止除中国内地以外的所有国家/地区
配置规则条件
需要阻止除单个国家/地区(示例中是中国内地)之外的所有国家/地区,请执行以下步骤:
在ESA控制台,选择站点管理,在站点列单击目标站点。
在左侧导航栏,选择
。填入规则名称
rule-01
。在匹配类型下拉列表中,选择国家/地区。
在运算符下拉列表中,选择不等于。
在值得下拉列表中,选择中国内地。
最后,在操作下拉列表中,选择拦截,然后单击确定。
相反,如果需要阻止单个国家/地区,请从运算符下拉列表中选择等于。然后按照如上方式进行操作。
表达式生成器:(ip.geoip.country ne "CN"
)。
验证浏览器拦截
当请求地域为非中国内地,例如这里以新加坡的地域尝试访问,将会返回默认的拦截页面以及响应码403。
运用ESA规则设置重定向规则
示例-将请求从一个URL重定向到另一个URL
配置规则条件
在ESA控制台,选择站点管理,在站点列单击目标站点。
在左侧导航栏,选择
。填入规则名称
rule-02
。在匹配类型下拉列表中,选择主机名。
在运算符下拉列表中,选择等于。
在值下拉列表中,填入主机名为:
www.example.com
增加URL路径,单击And。选择URL路径
在运算符下拉列表中,选择等于。
在值中,填入路径为:
/image1.jpg
。在单一重定向栏中,填入重定向的另一个URL:
https://www.example.com/image/image2.jpg
。
验证重定向效果
针对原始的请求做访问重定向,重定向到路径/image
,请求示例:可以看到状态代码301,已经重定向到image.jpg。
运用ESA规则设置浏览器缓存过期时间规则
示例-将主机名是www.example.com
,URL路径是/content
,缓存1小时。
配置规则条件
在ESA控制台,选择站点管理,在站点列单击目标站点。
在左侧导航栏,选择
。填入规则名称
rule-03
。在匹配类型下拉列表中,选择主机名。
在运算符下拉列表中,选择等于。
在值下拉列表中,填入主机名为:
www.example.com
。增加URL路径,单击And。选择URL路径。
在运算符下拉列表中,选择等于。
在值中,填入路径为:
/content
配置浏览器缓存过期时间
选择忽略源站缓存策略,使用自定义缓存时间。填写1,选择单位是小时。
验证浏览器过期缓存时间
测试验证访问该文件,获得响应cache-control: max-age=3600
。