<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">On Fri, Mar 18, 2016 at 10:15 AM, Швабауэр Павел <span dir="ltr"><<a href="mailto:shvabauer@arsenal-d.uz" target="_blank">shvabauer@arsenal-d.uz</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Good day team,<br>
I'm using varnish in our projects already long time, so thank you very much for this great technology!<br>
Let me explain 1 thing I can't realize already 2 weeks.<br>
<br>
so, here is task. Please take a look, we are using some sort of security in links, so every client has own generated links. </blockquote><div><br></div><div> <br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">(..)<br></blockquote><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><br>
# The data on which the hashing will take place<br>
sub vcl_hash {<br>
  ###### here we should modify url to try to return from cache<br>
  if (req.url ~ "/book/$") {<br>
    set req.http.cacheurl = regsub(req.url, "(.*)/(.*)/(.*)/(.*)$", "\1/\4");<br>
    std.log("hash rewrite was:" + req.url);<br>
    std.log("become ::: "+req.http.cacheurl);<br>
  } else {<br>
    set req.http.cacheurl = req.url;<br>
  }<br>
  hash_data(req.http.cacheurl);<br>
<br>
  if (req.http.host) {<br>
    hash_data(req.http.host);<br>
  } else {<br>
    hash_data(server.ip);<br>
  }<br>
}<br></blockquote><div><br></div><div>Here you hand over control to the builtin VCL. The builtin VCL will add req.url to the hash, which will more or less disable the caching. </div><div><br></div><div>If you return(lookup) in vcl_hash you will stop processing.</div><div><br></div></div>-- <br><div class="gmail_signature"><div dir="ltr"><div><div dir="ltr"><table border="0" cellpadding="0" cellspacing="0" style="border-bottom-width:1px;padding-top:5px;border-top-style:solid;width:550px;padding-bottom:5px;border-bottom-color:rgb(238,238,238);border-top-width:1px;border-bottom-style:solid;line-height:1.5em;border-top-color:rgb(238,238,238);color:rgb(102,102,102);font-size:12px;font-family:'Helvetica Neue',Arial,sans-serif;margin-top:20px"><tbody><tr><td width="100"><img src="http://www.varnish-software.com/static/media/logo-email.png"></td><td><font color="#222222"><span style="font-size:14px"><b>Per Buer</b></span></font><br>CTO | Varnish Software AS<br>Cell: <a value="+4790181750" style="color:rgb(17,85,204)">+47 95839117</a><br><span style="font-weight:bold">We Make Websites Fly!<br><a href="https://www.varnish-software.com/" style="color:rgb(17,85,204)" target="_blank">www.varnish-software.com</a></span></td></tr></tbody></table><br><div style="color:rgb(136,136,136)"><a href="http://info.varnish-software.com/signature" target="_blank"><img src="http://files.varnish-software.com/signature.png"></a><br></div></div></div></div></div>
</div></div>