• Nils Goroll's avatar
    Support ESI with clustering · c8464fe4
    Nils Goroll authored
    Previously, we failed to support ESI correctly: The fetch node would
    run ESI on the client side, such that the delivery node would receive
    an already ESI processed object.
    
    The concept of this change is:
    
    Custom code on the fetch node decides on beresp.do_esi. vcl_deliver on
    the fetch node sets the "E" bit of a new flags header if obj.can_esi
    is true, which reflects beresp.do_esi and disables ESI processing.
    
    When the delivery node receives an object from the fetch nodes, it
    sets beresp.do_esi based on the flags header.
    
    Ultimately, beresp.do_esi == obj.can_esi is identical on the fetch and
    delivery nodes.
    c8464fe4
Name
Last commit
Last update
..
testdata Loading commit data...
README.md Loading commit data...
acl_tmpl.go Loading commit data...
auth_tmpl.go Loading commit data...
doc.go Loading commit data...
extname_test.go Loading commit data...
hash_test.go Loading commit data...
ingresses_test.go Loading commit data...
recv_disposition_test.go Loading commit data...
recv_disposition_tmpl.go Loading commit data...
rewrite_test.go Loading commit data...
rewrite_tmpl.go Loading commit data...
self_shard_tmpl.go Loading commit data...
shard_test.go Loading commit data...
spec.go Loading commit data...
template.go Loading commit data...
vcl_test.go Loading commit data...
vcl_tmpl.go Loading commit data...