使用 Cloudflare 页面规则可以在增强安全性的同时提升站点体验与性能,并提高可靠性、降低源站带宽消耗。
并非所有规则都适用于每个场景,但以下是最常用的配置示例。
- 301/302 转发 URL(Forwarding URL)
- 特定路径的缓存级别(Cache Level)
- Edge Cache TTL、Always Online、Browser Cache TTL
使用转发 URL 的常见场景有两种:
- 将站点根路径设置为域名的规范版本。
- 将访客重定向到一个便于记忆的 URL。
以下示例将站点根路径设置为域名的规范版本:
- If the URL matches(如果 URL 匹配):
*www.example.com/* - Setting(设置): 转发 URL(Forwarding URL) | Select status code(选择状态码): 301 永久重定向(Permanent Redirect)
- Enter destination URL(输入目标 URL):
https://example.com/$2
以下示例将访客引导到一个便于记忆的目标页:
- If the URL matches(如果 URL 匹配):
*www.example.com/fb* - Setting(设置): 转发 URL(Forwarding URL) | Select status code(选择状态码): 302 临时重定向(Temporary Redirect)
- Enter destination URL(输入目标 URL):
https://www.facebook.com/username
网站的某些区域(例如登录页或后台管理区)通常有不同于公开页面的安全性与性能需求。
以下示例在访问特定路径时跳过缓存:
- If the URL matches(如果 URL 匹配):
example.com/user* - Setting(设置): 缓存级别(Cache Level) | Value(值): 绕过(Bypass)
你网站上某些资源更新频率低。对这类资源使用更激进的缓存策略,可明显降低源站负载并减少带宽占用。
下面的示例中,目标为保存主要图片资源和其他多媒体文件的目录:
- If the URL matches(如果 URL 匹配):
example.com/sites/default/files* - Setting(设置): 浏览器缓存 TTL(Browser Cache TTL) | Value(值): 1 天(a day)
- Setting(设置): 缓存级别(Cache Level) | Value(值): 全部缓存(Cache Everything)
- Setting(设置): 边缘缓存 TTL(Edge Cache TTL) | Value(值): 7 天(7 days)
以下示例为更新频率低的关键页面配置不同规则:
- If the URL matches(如果 URL 匹配):
example.com/terms-of-service - Setting(设置): 浏览器缓存 TTL(Browser Cache TTL) | Value(值): 1 天(a day)
- Setting(设置): 始终在线(Always Online) | Value(值): 开启(On)
- Setting(设置): 缓存级别(Cache Level) | Value(值): 全部缓存(Cache Everything)
- Setting(设置): 边缘缓存 TTL(Edge Cache TTL) | Value(值): 1 个月(a month)