varnish 2.15 - bypass caching for mobile devices?

Stig Bakken stig at zedge.net
Fri Feb 18 16:37:16 CET 2011


Browser recognition is a royal pain to begin with, and even more so with
mobile browsers (their user agents may differ between requests in some
cases).

I would suggest you move all of the browser/device detection logic to your
backend, but store the detected device in a cookie.  If varnish sees a
request without that cookie, it redirects the user to a browser/device
detection backend (using wurfl or deviceatlas for detection), which again
redirects to the original page with an extra parameter in the URL which
makes the final destination set the cookie.

>From there on, you can extract the device cookie with varnish and append it
to your varnish hash, as per
http://www.varnish-cache.org/trac/wiki/VCLExampleCacheCookies.

Of course, the browser detection backend URL must not be cached. :)

 - Stig

On Fri, Feb 18, 2011 at 3:56 PM, Mike Franon <kongfranon at gmail.com> wrote:

> Hi,
>
> Right now everything has been working great with this config, but we
> discovered an issue with our mobile devices, not ever getting to the
> apache redirect we setup to go to our mobile site, since it gets the
> cached version of our home page.  Is there a way to say if a mobile
> device by agent to bypass caching all together and let it pass through
> to the apache redirect which then goes to another site all together?
>
>
> Thanks,
> Mike
>
>
> Here is my default.vcl
>
>
> sub vcl_recv {
> if (req.url ~ "^/$" || req.url ~ "^/samples"){
>                unset req.http.cookie;
>                return(lookup);
> }
>
> else {
>                return(pass);
> }
>
> }
> sub vcl_fetch {
>    if (req.url ~ "^/$" || req.url ~ "^/samples"){
>        set beresp.ttl = 300s;
>        set beresp.http.cache-control = "public, max-age = 300";
>        set beresp.http.X-CacheReason = "varnishcache";
>        unset beresp.http.set-cookie;
>        return(deliver);
>    }
> }
>
> _______________________________________________
> varnish-misc mailing list
> varnish-misc at varnish-cache.org
> http://www.varnish-cache.org/lists/mailman/listinfo/varnish-misc
>



-- 
Stig Bakken
CTO, Zedge.net - free your phone!
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://www.varnish-cache.org/lists/pipermail/varnish-misc/attachments/20110218/3234f61a/attachment-0003.html>


More information about the varnish-misc mailing list