varnish 4 vcl
Posted in Uncategorized
vcl 4.0; backend default { .host = "127.0.0.1"; .port = "8079"; } sub vcl_recv { if (req.url !~"^/Admin/") { unset req.http.cookie; } if (req.url ~ "\.(png|gif|jpeg|jpg|ico|swf|css|js|html|htm|woff|ttf|eot|svg)(\?|$)"){ unset req.http.Cache-Control; unset req.http.Pragma; } if(req.url ~ "\.(css|js)(\?|$)"){ set req.url = "/s/min/?f=" + regsub(req.url, "^(.+)\?(.+)$","\1&\2"); } if(req.url ~ "^/I/1/"){ set req.url = regsub(req.url, "^/I/1/(.+)$" , "/I/v1.php/\1"); } } sub vcl_backend_response { set beresp.grace = 30s; if (bereq.url ~ "\.(png|gif|jpeg|jpg|ico|swf|css|js|html|htm|woff|ttf|eot|svg)(\?|$)"){ set beresp.ttl = 1w; set beresp.http.Cache-Control= "s-max-age=604800"; }else{ # set beresp.ttl = 30s; # set beresp.http.Cache-Control= "s-max-age=30"; } if (beresp.status == 404) { set beresp.ttl = 10s; } if (beresp.http.Content-Type ~ "(javascript|text|json)") { set beresp.do_gzip = true; } if (bereq.url !~"^/Admin/") { unset beresp.http.set-cookie; } } sub vcl_deliver{ if( obj.hits > 0 ){ set resp.http.X-Cache = "HIT"; }else{ set resp.http.X-Cache = "MISS"; } set resp.http.Server = "Hector Server v1.3"; unset resp.http.X-Powered-By; unset resp.http.Via; }