{"id":164,"date":"2016-07-21T18:11:26","date_gmt":"2016-07-21T10:11:26","guid":{"rendered":"http:\/\/xlight.me\/blog\/?p=164"},"modified":"2023-05-29T09:52:47","modified_gmt":"2023-05-29T01:52:47","slug":"varnish-4-vcl","status":"publish","type":"post","link":"https:\/\/xlight.me\/blog\/2016\/07\/varnish-4-vcl\/","title":{"rendered":"varnish 4 vcl"},"content":{"rendered":"<pre class=\"brush:cpp\">vcl 4.0;\nbackend default\n{\n  .host = \"127.0.0.1\";\n  .port = \"8079\";\n}\n\nsub vcl_recv\n{\n  if (req.url !~\"^\/Admin\/\")\n    {\n      unset req.http.cookie;\n    }\n  if (req.url  ~ \"\\.(png|gif|jpeg|jpg|ico|swf|css|js|html|htm|woff|ttf|eot|svg)(\\?|$)\"){\n\tunset req.http.Cache-Control;\n\tunset req.http.Pragma;\n  }\n  if(req.url  ~ \"\\.(css|js)(\\?|$)\"){\n    set req.url = \"\/s\/min\/?f=\" + regsub(req.url, \"^(.+)\\?(.+)$\",\"\\1&amp;\\2\");\n  }\n  if(req.url ~ \"^\/I\/1\/\"){\n    set req.url = regsub(req.url, \"^\/I\/1\/(.+)$\" , \"\/I\/v1.php\/\\1\");\n  }\n}\n\nsub vcl_backend_response\n{\n set beresp.grace = 30s;\n if (bereq.url ~ \"\\.(png|gif|jpeg|jpg|ico|swf|css|js|html|htm|woff|ttf|eot|svg)(\\?|$)\"){\n  set beresp.ttl = 1w;\n  set beresp.http.Cache-Control= \"s-max-age=604800\";\n }else{\n  # set beresp.ttl = 30s;\n  # set beresp.http.Cache-Control= \"s-max-age=30\";\n }\n\nif (beresp.status == 404) { \n    \tset beresp.ttl = 10s; \n    }\n if (beresp.http.Content-Type ~ \"(javascript|text|json)\")    {\n      set beresp.do_gzip = true;\n    }\n  if (bereq.url !~\"^\/Admin\/\")    {\n      unset beresp.http.set-cookie;\n    }\n}\n\nsub vcl_deliver{\n  if( obj.hits &gt; 0 ){\n    set resp.http.X-Cache = \"HIT\";\n  }else{\n    set resp.http.X-Cache = \"MISS\";\n  }\n  set resp.http.Server = \"Hector Server v1.3\";\n  unset resp.http.X-Powered-By;\n  unset resp.http.Via;\n\n}\n<\/pre>\n","protected":false},"excerpt":{"rendered":"<p>vcl 4.0; backend default { .host = &#8220;127.0.0.1&#8221;; .port = &#8220;8079&#8221;; } sub vcl_recv { if (req.url !~&#8221;^\/Admin\/&#8221;) { unset req.http.cookie; } if (req.url ~ &#8220;\\.(png|gif|jpeg|jpg|ico|swf|css|js|html|htm|woff|ttf|eot|svg)(\\?|$)&#8221;){ unset req.http.Cache-Control; unset req.http.Pragma; } if(req.url ~ &#8220;\\.(css|js)(\\?|$)&#8221;){ set req.url = &#8220;\/s\/min\/?f=&#8221; + regsub(req.url, &#8220;^(.+)\\?(.+)$&#8221;,&#8221;\\1&amp;\\2&#8243;); } if(req.url ~ &#8220;^\/I\/1\/&#8221;){ set req.url = regsub(req.url, &#8220;^\/I\/1\/(.+)$&#8221; , &#8220;\/I\/v1.php\/\\1&#8221;); } } sub&#8230; <\/p>\n<div class=\"read-more\"><a href=\"https:\/\/xlight.me\/blog\/2016\/07\/varnish-4-vcl\/\">Read More<\/a><\/div>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-164","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"https:\/\/xlight.me\/blog\/wp-json\/wp\/v2\/posts\/164","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/xlight.me\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/xlight.me\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/xlight.me\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/xlight.me\/blog\/wp-json\/wp\/v2\/comments?post=164"}],"version-history":[{"count":10,"href":"https:\/\/xlight.me\/blog\/wp-json\/wp\/v2\/posts\/164\/revisions"}],"predecessor-version":[{"id":870,"href":"https:\/\/xlight.me\/blog\/wp-json\/wp\/v2\/posts\/164\/revisions\/870"}],"wp:attachment":[{"href":"https:\/\/xlight.me\/blog\/wp-json\/wp\/v2\/media?parent=164"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/xlight.me\/blog\/wp-json\/wp\/v2\/categories?post=164"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/xlight.me\/blog\/wp-json\/wp\/v2\/tags?post=164"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}