是否有 Page Rule 教程?

目录

  1. 域名服务器
  2. 转发(重定向)
  3. 缓存设置
  4. 所有计划级别的选项
  5. Business 选项和 Enterprise 选项
  6. 仅 Enterprise 选项

域名服务器

Page Rule 使您能够根据页面的 URL 进行各种操作,例如创建重定向、微调缓存行为或启用和禁用我们的各种服务。

Page Rule 将在给定的 URL 模式下生效,匹配格式如下:

<scheme>://<hostname><:port>/<path> 

下面是使用每个组件的示例:

https://www.example.com:80/image.png

方案和端口组件都是可选的。如果省略方案,它将涵盖  http:// 和  https:// 协议。如果未指定端口,则该规则将匹配所有端口。您可以通过在规则模式中使用“*”符号来执行基本通配符匹配,从而使它匹配一系列相似的模式,而不仅仅是一个。

Page Rule 有两个重要事项需要注意:

  1. 只有一个 Page Rule 将对任何给定的请求生效
  2. 页面规则的优先级按照从上到下的顺序排列

在一个 URL 匹配一个规则后,只有该规则会被应用 - 即,如果 Page Rule 已基于一个请求触发,那么后续也匹配该 URL 模式的任何规则将不起作用。通常,建议您将规则按从最具体到最不具体的顺序排列。

Page Rule 可以暂停,在这种情况下,它们将不采取任何操作,但仍可以在列表中查看和编辑。  “保存为草稿” 选项将创建一个初始暂停的 Page Rule。

 

Page Rule 可以执行的具体操作如下所示:

 

转发:

使用 HTTP 301/302 重定向将一个 URL 重定向到另一个 URL。通配符匹配的 URL 的任何部分的内容在以后可以使用 $X 语法进行引用。X 表示模式中的 glob 索引:$1 将被替换为第一个通配符匹配,$2 将被替换为第二个通配符匹配,以此类推。

仅通配符可以在 Page Rule 中使用。完整的正则表达式支持当前不可用。

 

例如,假设您设置以下规则:

 

此处,对“www.example.com/stuff/things”的请求将重定向到“http://example.com/stuff/things”。

***注意***

请注意不要创建域指向其本身作为目标的重定向。这可能会导致无限的重定向错误,并且受影响的 URL 将无法解析。

**********

  如果想要在转发 URL 中使用 $ 而  不会  作为变量,您需要对它进行转义,方法是在 $ 之前添加 \。

自定义缓存:

使用我们标准的缓存级别为匹配页面规则模式的任何 URL 设置 缓存级别。 “缓存所有” 设置将缓存任何内容,即使它不是我们的 正常静态文件类型之一也是如此。 “旁路”  设置将阻止在该 URL 上缓存。

 

通过页面规则指定缓存级别时,您可以选择设置边缘缓存 TTL,它将控制我们在缓存中保留文件的时间。默认默认情况下,该设置是为了尊重所有现有的标头,它们使用 标准的 HTTP 缓存标头来控制缓存老化。您可以根据您的计划直接设置其他缓存有效期。

浏览器缓存 TTL 控制客户端浏览器缓存的资源的有效期。如果浏览器再次请求资源,并且 TTL 没有过期,它将收到 HTTP 304(未修改)响应。如果您发送的最长期限标头长于这一 TTL,该值将优先考虑。Free、 Pro 和 Business 客户可以将 TTL 设置为 30 分钟至 1 年;Enterprise 客户具有可缩短至 30 秒的附加选项,并可以选择遵循现有的最大期限标头。

下面的示例将设置一个规则来缓存“/图像”文件夹中找到的所有内容。缓存的资源在用户的浏览器中 将在 5 分钟后到期,在 Cloudflare 的数据中心将在一天后到期:

边缘缓存 TTL 将告诉我们的边缘在边缘缓存中保留某个对象的具体时长。而浏览器缓存 TTL 将指示客户端在其本地缓存中保留该对象的时长。  

 

下列选项适用于所有计划级别:

 

Always Online:

控制我们是否尝试从 Always Online  缓存中提供内容。您可能希望对站点中不应该返回缓存数据的部分禁用此选项,如 API 或支付/购物车页面。

 

应用:

可打开或关闭所有 Cloudflare 应用。

 

Mirage

启用或禁用 Mirage.

 

Rocket Loader

控制 Rocket Loader 的运行模式。

 

SSL

控制 使用哪个 SSL 模式.

 

安全级别:

控制客户端威胁分数必须达到多高,客户端才会遇到质询页面,并可以用来设置您站点的一部分,以在访问者访问您的站点之前,始终向他们显示 “处于攻击之下”模式 质询。

 

 

电子邮件混淆:

打开或关闭 电子邮件混淆: 。

   

WAF

打开或关闭 Web 应用程序防火墙 打开或关闭。

 

浏览器完整性检查:

控制我们 是否会检查用户的浏览器以查找通常与某些 bot 相关联的标头.

 

始终使用 HTTPS:

通过创建 301 重定向,将任何 http:// URL 转换为 https://  URL。如果您想要强制将您站点的某些部分转换为 HTTPS(使用证书来确保客户端和我们的边缘之间的连接),该选项较为常用。

 

IP 地理位置标头:

包含访问者位置的国家/地区代码以及对您的网站的所有请求。可在 CF-IPCountry HTTP 标头中找到相关信息。

 

禁用安全性:

禁用以下功能:

 

***注意事项***

如果一个规则设置为禁用安全性,而另一个规则设置为启用 WAF,那么无论它们出现的顺序如何,WAF 规则都会优先应用。

 

禁用性能:

禁用以下功能:

 

下列选项只能由 Business 和 Enterprise 客户进行配置: 

绕过缓存 Cookie(仅适用于 Business 和 Enterprise):

如果一个 Cookie 名称与正则表达式匹配,则 Cloudflare 将绕过“缓存所有”规则并从源服务器中获取资源。

该功能允许 Cookie 值中存在基本正则表达式:

  • 通配符运算符(例如,“ .*”),因此规则值“t.*st”可匹配名为“test”和“teeest”的 Cookie。
  • 允许匹配多个 Cookie 的管道运算符(由“|”表示)(例如,如果已设置名为“bypass”或“PHPSESSID”的 Cookie,则“bypass|PHPSESSID”将绕过)。

这些运算符按您所需方式组合,前提是满足以下验证规则:

  • 每个 Cookie 正则表达式 150 个字符限制
  • 每个 Cookie 正则表达式 12 个通配符限制
  • Cookie 正则表达式中每个 | 之间 1 个通配符限制

有关使用各种平台对此功能进行设置的具体建议,请查看以下文章:

注意: 如果将仅适用于 Enterprise 的“Cookie 上的缓存”(见下文)逻辑添加到同一个 Page Rule,这将始终优先于“绕过缓存 Cookie”

下列选项只能由 Enterprise 客户进行配置:

Cookie 上的缓存(仅限 Enterprise):

如果一个 Cookie 名称与正则表达式匹配,则 Cloudflare 将对该 URL 应用“缓存所有”,并从缓存获取资源。

注意: 如果将“绕过缓存 Cookie”(见上文)逻辑添加到同一个 Page Rule,则仅当请求中不存在“Cookie 上的缓存”值时才会应用“绕过”。

Cookie 正则表达式的验证规则等同于“绕过 Cookie 上的缓存”(见上文)。

主机标头重写(仅适用于 Enterprise):

任何与 URl 匹配的请求会将  主机标头重写 为您在“主机标头重写”字段中输入的一个标头。

 

解析重写(仅适用于 Enterprise):

更改 URL 请求的原始地址。用户将在浏览器地址栏中看到域名,但内容将通过“解析”字段中的 URL 提供。

 

自定义缓存键(仅限 Enterprise):

控制在决定缓存哪些资源时具体包括哪些变量,即它允许用户基于除了 URL 之外的其他内容来确定缓存内容。请注意,用户无法直接控制这些内容。自定义缓存键将需要  向 Cloudflare 的支持团队请求.

 

Query String Sort(仅限 Enterprise):

重新排序任何查询字符串 以便它们具有相同的格式,从而加速缓存命中率。

 

原始错误页面通过(仅限 Enterprise):

禁用将触发从源服务器发送的问题的 Cloudflare 错误页面,改为显示在源服务器中设置的错误页面。

 

真正的客户端 IP 标头(仅适用于 Enterprise):

默认情况下,Cloudflare 会使用 Cloudflare IP 地址发送回数据包。如果启用了True-Client-IP,Cloudflare 将使用最终用户 IP 地址在发送给源服务器的请求中添加 True-Client-IP 标头。

 

最大上大小(仅限 Enterprise):

Cloudflare 会限制访问者每次请求可以上载的最大数据量。此限制由计划级别决定:

  • Free: 100 MB
  • Pro: 100 MB
  • Business: 200 MB
  • Enterprise: 500 MB(默认值)

 

响应缓冲(仅限 Enterprise):

Cloudflare 会一直等到它拥有整个文件时才会将其转发给最终用户。默认情况下,当我们收到数据包时,Cloudflare 会将这些数据包发送给客户端。

Not finding what you need?

95% of questions can be answered using the search tool. This is the quickest way to get a response.

由 Zendesk 提供技术支持