Getting WordPress to work with Varnish 4.0

  • by

With Varnish 4.0, the VCL has changed. So an update from Varnish 3 .0 to Varnish 4.0 requires a change in the VCL file, /etc/varnish/default.vcl. As a part of Varnish cache server configuration for a WordPress based site, using nginx web server, the following VCL is required in /etc/varnish/default.vcl for dropping cookies sent to WordPress and also for dropping any cookies that WordPress tries to send back to the client.

vcl 4.0;

# Default backend definition. Set this to point to your content server.
backend default {
    .host = "";
    .port = "8080";

# Drop any cookies sent to WordPress.
sub vcl_recv {
        if (!(req.url ~ "wp-(login|admin)")) {
                unset req.http.cookie;

# Drop any cookies WordPress tries to send back to the client.
sub vcl_backend_response {
        if (!(bereq.url ~ "wp-(login|admin)")) {
                unset beresp.http.set-cookie;
0 0 votes
Article Rating
Notify of
Inline Feedbacks
View all comments