Dear all, Currently, I migrate a configuration from Varnish 3 to Varnish 6 but I have an issue concerning unset a header to a backend but keep it in the resp.
Indeed, I cannot use it in vcl_backend_response because it's unset before (vcl_pass/vcl_backend_fetch)... In the documentation ( https://book.varnish-software.com/4.0/chapters/VCL_Subroutines.html), I can see that "if you do not wish to send the X-Varnish header to the backend server, you can remove it in vcl_miss or vcl_pass. For that case, you can use unset bereq.http.x-varnish;." but I cannot use bereq in vcl_miss/vcl_pass. Do you have any idea how to keep this header in vcl_backend_response but without send it to backend? In Varnish 3, I used it in vcl_miss/vcl_pass and the unset bereq was set in vcl_fetch. *Vcl code:* vcl 4.1; import std; backend dev { .host = "127.0.0.1"; .port = "8080"; } sub vcl_recv { set req.http.App="App1"; set req.backend_hint = dev; return (hash); } sub vcl_miss { unset req.http.App; } sub vcl_pass { unset req.http.App; } sub vcl_backend_fetch { unset bereq.http.App; } sub vcl_backend_response { if (bereq.http.App) { set beresp.http.Debug = "test"; set beresp.ttl = 10s; set beresp.grace = 10s; return (deliver); // not applied } } sub vcl_deliver { set res.http.App; } *Goal*: - Currently: App header in unset for backend & client (unable to use it in vcl_backend_response) - Goal: App header can be used for conditions in vcl_backend_response but not sent to the backend Best regards,
_______________________________________________ varnish-misc mailing list [email protected] https://www.varnish-cache.org/lists/mailman/listinfo/varnish-misc
