Shield:缓存、规则、TLS

边缘如何处理一个请求。

请求到达离访客最近的节点,经过一串固定顺序的关卡,然后由缓存应答或回源取回。本页就是这个顺序本身。

01

处理顺序

  1. 强制 HTTPS(若开启)—— 在其余一切之前 301,以保证任何关卡都不会运行在明文页面上。
  2. 网络规则 —— 你自己的 allow / block / challenge / ratelimit 规则,可按国家、ASN、地址或运营商匹配。
  3. WAF(若开启)—— 对请求做模式检查,包括请求体:表单、JSON、文本、XML、GraphQL 且小于 64 KB 时也会被检查。
  4. 限速 —— 按访客地址的令牌桶。
  5. 缓存 —— 节点磁盘上若有新鲜副本,直接应答。
  6. 源站 —— 否则回源取回,或经由你的 Link 隧道取回。
动作为 ratelimit 的网络规则,会把本次请求的额度强制压到每分钟最多 30 次,无论站点自身限额是多少。这样可以只收紧特定人群,而不必降低所有人的限额。
02

什么会被缓存

源站的指令优先。带 no-storeno-cacheprivate 的响应完全不缓存;带 max-age=N 的按 N 秒缓存。站点自身设置只在源站什么都没说时生效。

模式缓存范围
static只缓存静态内容类型,其余每次回源。
all全部缓存,可为 text/html 单独设置 TTL。
origin不缓存,除非源站用 max-age 明确要求。

清除缓存要么是整站(需要一次发布才能到达各节点),要么是精确 URL 列表 —— 每次最多 30 条。没有前缀或标签清除。

每个节点维护各自的缓存,且不处理 Vary。如果响应会随请求头(语言、编码、设备)变化,请改用不同的 URL,或者不要缓存它。
03

证书

通过 DNS 挑战自动签发并自动续期,前提是当初让我们能够签发的那套 DNS 安排仍然存在。对 CNAME 接入的主机名来说,那就是 _acme-challenge 记录 —— 这是几个月后证书悄无声息停止续期最常见的原因。

04

常见问题

能看到什么被拦截了吗?

可以。站点的 Logs 标签页会显示近期请求及其处理动作 —— pass、waf、netrule_block、ratelimit、challenge 或源站错误 —— 于是过于宽泛的规则会以它误伤的内容形式暴露出来。

WAF 会检查上传吗?

不会。multipart、二进制与超长请求体原样转发。在边缘扫描大文件上传的代价高于它带来的保护;请在源站校验上传内容。

继续

相关文档

开始使用

Orbit 账户的组织方式、控制台各处的功能,以及从登录到让我们的网络开始应答一个域名的最短路径。

DNS 托管

建区、把注册商的 NS 指向我们、管理记录。含加权应答、带健康检查的记录、顶点 ALIAS 与区文件导入。

接入主机名

整域委派、单主机名委派,或加一条 CNAME 而完全不动现有 DNS。三者各自的代价与适用场景。

← 全部文档