The OpenWAF edge cache stores cacheable responses on each edge node, so repeat requests are answered without reaching your origin. It follows the same model as the big CDNs, with safer defaults: static files by extension are cached out of the box, HTML and JSON only when a rule says so, and your origin's Cache-Control is respected.
How it fits
request ─▶ WAF · rate limits · access gate · AI agents ─▶ cache ─▶ originEvery security check runs before the cache. A request the WAF blocks never gets a cached response, and hits still count towards rate limits. The cache saves your origin work and your visitors time; it never skips security.
Features
- Safe defaults. Static files (images, CSS, JS, fonts, media, archives, documents) are eligible;
Set-Cookie,private,no-storeand unknownVaryheaders keep a response out of the cache. Cache deception armor is on. - Cache rules. Up to 25 rules to bypass paths or make HTML eligible, with edge and browser TTLs, query-string handling and stale content. Templates for WordPress, Next.js and static sites.
- Fast purge. By URL, prefix, hostname,
Cache-Tagor everything. Edge nodes apply it within about a second, and you can watch each node confirm it. - Stale content. Serve an expired copy while revalidating, or when the origin is down or answers 5xx.
- 103 Early Hints. Let browsers start loading stylesheets, fonts and the main image while your origin still builds the page.
- Clear debugging. Every response carries
X-Cache-Statusand the standardCache-Statusheader.
Start here
Vary.Cache status headersread X-Cache-Status, Cache-Status and Age.Configure the cachecaching level, browser TTL, development mode and stale content.Cache rulesbypass or cache by path, extension, cookie or parameter.Purge the cacheeverything, URLs, prefixes, hostnames or tags, from the dashboard or CI.Early Hintssend 103 responses with preload links.Settings referenceevery setting, default and limit.Troubleshootingwhy a response isn't cached.