You need to enable JavaScript to run this app.
导航
Origin 黑白名单
最近更新时间:2025.10.27 10:41:15首次发布时间:2022.03.15 00:07:44
复制全文
我的收藏
有用
有用
无用
无用

本文档介绍如何在火山引擎内容分发网络(CDN)中配置 Origin 黑白名单。

概述

Origin 是用户请求中的一个请求头,表示请求是来自哪个站点的。Origin 头部包含协议,域名和端口,不包含路径与查询字符串。端口号是可选的。

Origin 头部的作用之一是防盗链。您可以为您的站点配置一个 Origin 黑名单以拒绝来自指定域名的请求。或者您可以为您的站点配置一个 Origin 白名单只允许接受来自指定域名的请求。

空 Origin

"空 Origin" 的定义是 Origin 头部没有值或者请求中不包含 Origin 头部。

说明

Origin: null 不被视为是 "空 Origin" 情况。

功能优先级

CDN 提供的一系列访问控制功能有不同的优先级。在 CDN 处理用户请求时,这些功能按优先级对请求生效。参见 访问控制功能的优先级

操作步骤

  1. 登录 火山引擎内容分发网络控制台
  2. 在左侧导航栏,点击 域名管理
  3. 域名管理 页面,找到需要配置的域名,点击 管理
  4. 定位 Origin 黑白名单 模块。
    • 如果您使用的是旧版域名管理页面,点击 编辑配置,然后在 访问控制 标签页中定位 Origin 黑白名单 模块。
    • 如果您使用的是新版域名管理页面,点击 编辑域名。在页面左侧的树状配置项列表中,定位 功能配置 > 访问控制 > Origin 黑白名单。如果该模块置灰,点击模块右边的 +
      关于新旧版域名管理页面的区别,参见 新版域名配置
  5. Origin 黑白名单 模块中,设置 状态 为启用。
  6. 参照下方 配置说明 配置。
  7. 配置完成后,点击 提交编辑

Image

配置说明

配置

说明

类型

表示名单的类型。该配置有以下选项:

  • 白名单:当您只想允许来自某些站点的请求时,可以配置 Origin 白名单。如果用户的请求不匹配白名单,CDN 拒绝请求并且响应 403 状态码
  • 黑名单:当您只想阻止来自某些站点的请求时,可以配置 Origin 黑名单。如果用户的请求匹配了黑名单,CDN 拒绝请求并且响应 403 状态码。

常规名单(输入框)

表示一个或者多个名单条目。如果您在 规则内容 处勾选了 常规名单,该输入框会出现。

输入要求
名单最多可以包含 100 个条目,总长度不能超过 30,000 个字符。您可以输入一个或者多个域名和 IP 地址。域名可以是泛域名。IP 地址可以是 IPv4 地址、IPv6 地址、IPv4 CIDR 地址或者 IPv6 CIDR 地址。多个条目之间使用分号(;)或换行符分隔。

关于泛域名和子域名

  • 泛域名不包含域名本身。例如:*.example.com 不包含二级域名 example.com,但是包含 www.example.coma.a.example.com 等。
  • 子域名的级别数量没有限制。例如,您可以指定一个子域名为 aaa.bbb.ccc.ddd.eee.fff.ggg.eee.example.com。关于 Origin 名单的匹配逻辑,参见 Origin 匹配逻辑

空 Origin 访问 CDN 资源

表示在 空 Origin 场景下,CDN 处理请求的方式。

  • 如果 类型黑名单,该选项是 允许空 Origin 访问 CDN 资源
  • 如果 类型白名单,该选项是 不允许空 Origin 访问 CDN 资源

忽略大小写

表示 CDN 在尝试将名单中的条目与请求中的 Origin 头部匹配时,匹配过程是否是大小写敏感的。勾选该选项示匹配过程是大小写不敏感的。

Origin 匹配逻辑

我们通过以下名单配置为例,阐述 Origin 头部的匹配逻辑。如果一个请求未匹配白名单或者匹配了黑名单,CDN 会拒绝请求并返回 403 响应状态码。

名单配置

用户请求中 Origin 头部

匹配名单

匹配逻辑说明

  • www.test.com
  • 1.1.1.1
  • 2001:0db8:3c4d:0015:0000:0000:1a2f:1a2b
  • *.test.com

http://www.test.com

Origin 头部中的域名匹配名单。

http://www.test.com:80

www.test.com

Origin 头部不符合 HTTP 协议规范。规范要求 Origin 头部部值必须是以下格式之一:

  • scheme://host:port
  • scheme://host

2001:0db8:3c4d:0015:0000:0000:1a2f:1a2b

http://2001:0db8:3c4d:0015:0000:0000:1a2f:1a2b

Origin 头部不符合 HTTP 协议规范。规范要求当 host 是一个 IPv6 地址时,该地址必须包裹在 [] 中。

http://[2001:0db8:3c4d:0015:0000:0000:1a2f:1a2b]

Origin 头部中的 IP 地址匹配名单。

http://aaa.test.com

Origin 头部中的多级域名匹配名单中的泛域名条目。泛域名是包含多级域名的。

http://ss.aaa.test.com

http://test.com

Origin 头部中的二级域名不匹配名单中的泛域名条目。原因是泛域名不包含二级域名本身。