通过自定义响应码规则,在边缘安全加速 ESA边缘节点直接返回指定的 HTTP 响应码与响应页面,无需回源。
功能介绍
针对特定请求,客户希望返回非源站默认的 HTTP 响应。例如,统一拦截提示、维护页或临时跳转码。依赖回源处理会增加延迟和源站压力。自定义响应码规则在ESA边缘节点直接返回指定的 HTTP 响应码和响应页面,无需回源即可完成响应处理。
适用场景与功能选择
自定义响应码规则适用于直接在边缘返回固定响应码与页面的场景。以下表格帮助客户根据实际需求选择ESA中适用的功能:
需求 | 推荐功能 |
返回固定 HTTP 响应码与可选响应页面 | 自定义响应码规则(本功能) |
改写请求路径、参数或重写响应体 | 重写规则 |
基于安全检测拦截或挑战请求 | WAF 规则、自定义防护规则 |
边缘动态逻辑、复杂条件分支 | 边缘函数(Edge Functions) |
应用场景
自定义错误提示:将 404、500 等错误码替换为自定义页面,向用户展示友好的错误信息。
临时维护拦截:在系统维护期间,对特定路径返回 503 状态码并展示维护页面。
快速拦截恶意请求:匹配攻击特征后返回 403 并展示拦截提示页。
前提条件
已添加域名并接入ESA。
使用响应页面功能前,需先创建自定义页面。创建后即可在规则中直接引用。
新增自定义响应码规则
验证规则生效
使用
curl -I https://<客户域名>/<匹配路径>或浏览器访问匹配该规则的请求。确认返回的 HTTP 状态码与配置一致;如配置了响应页面,访问浏览器时应看到对应自定义页面内容。
示例中的 <客户域名> 和 <匹配路径> 为占位符,请替换为实际接入ESA的域名和命中规则的请求路径,去掉尖括号。
管理自定义响应码规则
在自定义响应码规则列表中,可以对已有规则进行以下操作:
搜索规则:在列表顶部的搜索框中输入规则名称进行过滤查找。
拖拽排序:拖动规则条目调整执行顺序,规则按从上到下的顺序依次匹配。
启用/禁用:切换规则的启用状态。禁用后的规则不再生效,但配置保留。
编辑规则:修改规则名称、匹配条件、响应码和响应页面等配置。
删除规则:删除不再使用的规则。删除操作不可恢复,请谨慎操作。
注意事项
规则匹配按列表从上到下的顺序执行,一旦匹配成功即返回响应,不再继续匹配后续规则。请合理安排规则的执行顺序。
响应码取值范围为 200~599,覆盖了所有有效的 HTTP 状态码。请根据实际业务场景选择合适的响应码。
多条自定义响应码规则按列表顺序匹配,命中第一条匹配规则后即返回响应。可在列表中通过排序位置调整规则优先级。自定义响应码规则与重写规则、安全规则属不同类型,相互独立生效。
规则修改、新增或删除后,配置在边缘节点上实时生效,无需手动刷新。
规则未生效时的排查方向
检查规则是否处于启用状态。
检查规则顺序,多条规则按列表顺序匹配,靠前的规则优先命中。
检查匹配条件是否覆盖了请求的路径、方法、来源等,确保实际请求能命中规则。