Accelerators groups the two sections that speed up repeat access: Caching stores responses in memory for reuse, and Prefetch proactively downloads resources before a client requests them. They interact — a prefetched object is only useful if Caching later serves it — so both live on this one page.
Caching
Prefetch
The Cache section controls in-memory HTTP caching, refresh policy, and ICP parameters for forwarding.
Walk Refresh rows top-down; first enabled row whose profiles match sets min/max age, validate, and cachable flag, then stops. cachable=FALSE sets CACHE_INVALID unless CACHE_FORCE.
Disk store is hard-disabled. Disk store selection is inactive — new objects are memory-only regardless of Store row configuration.
Objects stored despite no-cache / no-store get CACHE_VIOLATION. When Violate RFC is off, reads return NULL (not served). When on, violation objects may be served.
Async queue, cache pre-check, HTML parser first-match.
Asynchronous Queue: Prefetching is driven by an asynchronous, background worker thread (prefetch_thread) that monitors a PREFETCH_QUEUE. It does not block the primary client connection.
Cache Pre-Validation: Before initiating a prefetch download, the thread checks if the object exists in the cache. If the object is already cached, the prefetch is aborted to save bandwidth.
Request Spoofing: The background thread creates a synthetic, unattached HTTP connection, forces it through the routing pipeline, and uses a hardcoded User-Agent to request the file from the origin.
Profiles — Limit the rule to connections with matching Access Profile tags. Blank matches all.
Tag name — HTML element to scan (case-insensitive), for example a, img, link. Blank skips the row.
Tag attribute — Attribute holding the URL (for example href or src).
Attribute pattern — POSIX regex on the attribute value after tag/attribute match. Blank accepts any non-empty value. On match, the URL is resolved and queued unless cached or queue full.
Maximum file size — Skip prefetch when response Content-Length exceeds this size. 0 = no cap.
Recursion level — How many levels prefetched HTML is analyzed for further links. Note: setting 0 follows links indefinitely per field help.
During HTML responses, enabled Prefetch rows are checked top to bottom.
The first row whose profiles match and whose tag/attribute/pattern succeeds drives prefetch for that parser pass.
Matched URLs enter the queue subject to queue size, host limit, and cache state.
Caching Prefetch window limits duplicate prefetch writes for the same URL within N seconds.
Some prefetch hooks and the Prefetch now CGI handler require ENABLE_PREFETCH at build time. If manual prefetch fails, confirm your build includes prefetch support.
The Prefetch rule-row list ships empty by default — no live example available for a rule
row. Prefetch now is populated and matches Example 3 below.Open Configure → Application Setup → Accelerators → Prefetch → Prefetch now.
Result: on HTML pages, stylesheets matching .css and all script src URLs are queued for early fetch when row 1 or 2 matches first for that element scan order.