快速上手

规则功能能够使用图形化的方式来配置各种条件规则。条件规则支持对用户请求中携带的各种参数信息进行识别,以此来决定某个配置是否对该请求生效,可用于更加灵活、更加精确地控制各种配置策略的执行效果。规则允许您使用相同的基本语法和配置逻辑在不同的产品功能(例如:缓存、重定向、压缩、回源、WAF等)中创建和部署条件规则。

ESA规则

规则允许您使用相同的基本语法和配置逻辑在不同的产品功能(例如:缓存、重定向、压缩、回源、WAF等)中创建和部署条件规则。

注意事项

  • 同一个功能,如果在全局配置和规则上都添加了配置,那么用户请求命中规则条件的时候,规则上的配置优先生效。

  • 单条规则配置(规则条件+功能配置)的长度限制为4k字符。

  • 站点维度上所有的配置信息(包含全局配置和规则配置)限制总大小不超过512K字节(安全防护中的规则配置除外)。

  • 规则名称的长度限制为128字符。

规则模板

  • ESA产品将一些常见场景的配置设置为规则配置模板,您可以点击模板来快速创建出对应场景的规则配置。

  • 新增规则后,当用户发起资源访问请求时,ESA将根据规则的生效优先级依次进行匹配与执行。

操作步骤

  1. ESA控制台,选择站点管理,在站点列单击目标站点。

  2. 在左侧导航栏,选择规则 > 规则模板

  3. 在规则模板页面,选择重定向到新URL,单击右上角创建。

  4. 在自定义规则中,输入要重定向的URI路径,如:/esa.jpg

  5. 在单一重定向中,输入重定向的完整URL,如:https://www.aliyun.com

  6. 测试访问,http://yourDomain/esa.jpg,返回301状态码,表示重定向生效。

    image

运用ESA规则进行WAF防护

示例-阻止除中国内地以外的所有国家/地区

配置规则条件

需要阻止除单个国家/地区(示例中是中国内地)之外的所有国家/地区,请执行以下步骤:

  1. ESA控制台,选择站点管理,在站点列单击目标站点。

  2. 在左侧导航栏,选择安全防护 > WAF > 自定义规则 > 新增规则

  3. 填入规则名称rule-01

  4. 在匹配类型下拉列表中,选择国家/地区

  5. 在运算符下拉列表中,选择不等于

  6. 在值得下拉列表中,选择中国内地

  7. 最后,在操作下拉列表中,选择拦截,然后单击确定

image

相反,如果需要阻止单个国家/地区,请从运算符下拉列表中选择等于。然后按照如上方式进行操作。

表达式生成器:(ip.geoip.country ne "CN")。

验证浏览器拦截

当请求地域为非中国内地,例如这里以新加坡的地域尝试访问,将会返回默认的拦截页面以及响应码403。

image

运用ESA规则设置重定向规则

示例-将请求从一个URL重定向到另一个URL

配置规则条件

  1. ESA控制台,选择站点管理,在站点列单击目标站点。

  2. 在左侧导航栏,选择安全防护 > WAF 自定义规则 > 新增规则

  3. 填入规则名称rule-02

  4. 在匹配类型下拉列表中,选择主机名

  5. 在运算符下拉列表中,选择等于

  6. 在值下拉列表中,填入主机名为:www.example.com

  7. 增加URL路径,单击And。选择URL路径

  8. 在运算符下拉列表中,选择等于。

  9. 在值中,填入路径为:/image1.jpg

  10. 在单一重定向栏中,填入重定向的另一个URL:https://www.example.com/image/image2.jpg

image

验证重定向效果

针对原始的请求做访问重定向,重定向到路径/image,请求示例:可以看到状态代码301,已经重定向到image.jpg。

image

运用ESA规则设置浏览器缓存过期时间规则

示例-将主机名是www.example.comURL路径是/content,缓存1小时。

配置规则条件

  1. ESA控制台,选择站点管理,在站点列单击目标站点。

  2. 在左侧导航栏,选择安全防护 > WAF > 自定义规则 > 新增规则

  3. 填入规则名称rule-03

  4. 在匹配类型下拉列表中,选择主机名

  5. 在运算符下拉列表中,选择等于

  6. 在值下拉列表中,填入主机名为:www.example.com

  7. 增加URL路径,单击And。选择URL路径

  8. 在运算符下拉列表中,选择等于。

  9. 在值中,填入路径为:/content

image

配置浏览器缓存过期时间

选择忽略源站缓存策略,使用自定义缓存时间。填写1,选择单位是小时。

image

验证浏览器过期缓存时间

测试验证访问该文件,获得响应cache-control: max-age=3600

image