varnish config 3

by trisna dev

JavaScript

sub vcl_backend_response {
    # Set grace period to 2 hours
    set beresp.grace = 2h;

    # Cache static resources for 1 year
    if (bereq.url ~ "\.(css|js|jpg|jpeg|png|gif|ico|woff|woff2|ttf|svg)$") {
        set beresp.ttl = 365d;
    }
}

sub vcl_hit {
    if (obj.ttl >= 0s) {
        # Serve stale content if backend is down
        if (std.healthy(req.backend_hint)) {
            return (deliver);
        } else {
            if (obj.ttl + obj.grace > 0s) {
                return (deliver);
            }
        }
    }
    return (fetch);
}