本文档介绍火山引擎内容分发网络(CDN)中用户请求的自定义拦截功能。
该功能使您可以对请求路径、查询参数和客户端 IP 地址设置过滤条件,并对符合过滤条件的请求设置拦截方式。拦截的方式包括重定向以及响应 4xx 状态码。
说明
该功能目前以白名单的方式对外开放。如果您需要此功能,请 提交工单。
CDN 提供的一系列访问控制功能有不同的优先级。在 CDN 处理用户请求时,这些功能按优先级对请求生效。参见 访问控制功能的优先级。
登录 火山引擎内容分发网络控制台。
在左侧导航栏,点击 域名管理。
在 域名管理 页面,找到需要配置的域名,点击 管理。
在域名页面上,点击 访问控制 页签。
在页面右上方,点击 编辑配置。
在 自定义拦截规则 下方,设置 状态 为启用。
点击 添加规则。您最多可以创建 10 条规则。
在 编辑规则 页面,根据 配置说明 进行设置。
设置完成后, 在页面右上角点击 提交编辑。
说明
关于以下配置的内容输入要求,参见 配置输入要求。
配置 | 说明 |
---|---|
规则名称 | 表示规则的名称。 |
生效对象 | 表示一个或者多个过滤条件,用于对请求进行过滤。点击 添加 创建一个过滤条件,您最多可以创建 5 个过滤条件。如果您不添加任何过滤条件,CDN 会拦截所有请求。
如果过滤类型是 全路径正则 或 请求 FullQuery,过滤值是正则表达式。要使用这两个过滤类型,请 提交工单。
|
拦截方式 | 表示 CDN 如何拦截符合过滤条件的请求。该配置的可选值有:
如果您计划创建多条规则,每条规则中指定的拦截方式必须相同。 |
拦截方式为 4xx 错误 时,您可以设置以下额外配置:
配置 | 说明 |
---|---|
响应状态码 | 表示对于拦截的请求,CDN 的响应状态码。您需要设置一个 400-499 范围内的错误码,例如 405 。 |
响应 Body | 表示响应正文中包含的内容。该配置有以下选项:
|
拦截方式为 重定向 时,您可以设置以下额外配置:
配置 | 说明 |
---|---|
响应状态码 | 表示对于拦截的请求,CDN 的响应状态码。您可以设置 301 或者 302。 |
Location | 表示一个重定向 URL。 |
在规则列表中,每条规则都有优先级。优先级为 1 的规则具有最高优先级。当收到一个用户请求时,CDN 按规则的优先级,从高到低尝试将请求与规则匹配。如果请求匹配了一条规则,匹配过程就停止了。您可以拖动规则来调整优先级。
规则中的 生效条件 定义了规则的作用范围。如果您创建了多条规则,请留意这些规则的作用范围是否存在交集,并按您的预期设置规则的优先级。例如,您创建了两条规则。规则A 的作用范围是 /dir/
,规则B 的作用范围是 png;jpg
。如果 /dir/
目录下存在 .png 文件,并且您希望规则B 对 .png 文件的请求生效,那么您需要设置规则B 的优先级高于规则A。
配置 | 输入要求 |
---|---|
规则名称 | 长度不超过 20 个字符,可以包含字母、数字、下划线(_)、中划线(-)、汉字。一个汉字占 3 个字符。 |
生效对象 | 生效对象中,过滤值的输入要求如下:
|
Location | URL 必须以 http:// 或 https:// 开头,长度不能超过 1,024 个字符。 |