#This is a basic VCL configuration file for varnish. See the vcl(7) #man page for details on VCL syntax and semantics. #Default VCL version declaration vcl 4.0; #Default backend definition. Set this to point to your content #server. backend default { .host = "127.0.0.1"; .port = "80"; } #Below is a commented-out copy of the default VCL logic. If you #redefine any of these subroutines, the built-in logic will be #appended to your code. # #sub vcl_recv { # if (req.request != "GET" && # req.request != "HEAD" && # req.request != "PUT" && # req.request != "POST" && # req.request != "TRACE" && # req.request != "OPTIONS" && # req.request != "DELETE") { # /* Non-RFC2616 or CONNECT which is weird. */ # pipe; # } # if (req.request != "GET" && req.request != "HEAD") { # /* We only deal with GET and HEAD by default */ # pass; # } # if (req.http.Authorization || req.http.Cookie) { # /* Not cacheable by default */ # pass; # } # lookup; #} # #sub vcl_pipe { # pipe; #} # #sub vcl_pass { # pass; #} # #sub vcl_hash { # set req.hash += req.url; # if (req.http.host) { # set req.hash += req.http.host; # } else { # set req.hash += server.ip; # } # hash; #} # #sub vcl_hit { # if (!obj.cacheable) { # pass; # } # deliver; #} # #sub vcl_miss { # fetch; #} # #sub vcl_fetch { # if (!obj.cacheable) { # pass; # } # if (obj.http.Set-Cookie) { # pass; # } # set obj.prefetch = -30s; # deliver; #} # #sub vcl_deliver { # deliver; #} # #sub vcl_discard { # /* XXX: Do not redefine vcl_discard{}, it is not yet supported */ # discard; #} # #sub vcl_prefetch { # /* XXX: Do not redefine vcl_prefetch{}, it is not yet supported */ # fetch; #} # #sub vcl_timeout { # /* XXX: Do not redefine vcl_timeout{}, it is not yet supported */ # discard; #} # #sub vcl_error { # set obj.http.Content-Type = "text/html; charset=utf-8"; # synthetic {" #<?xml version="1.0" encoding="utf-8"?> #<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" # "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> #<html> # <head> # <title>"} obj.status " " obj.response {"</title> # </head> # <body> # <h1>Error "} obj.status " " obj.response {"</h1> # <p>"} obj.response {"</p> # <h3>Guru Meditation:</h3> # <p>XID: "} req.xid {"</p> # <address><a href="http://www.varnish-cache.org/">Varnish</a></address> # </body> #</html> #"}; # deliver; #}