Frontend caching to multiple sites

Espen Braastad espen at linpro.no
Wed Nov 5 08:58:52 CET 2008


Alecs Henry wrote:
> I want to set up varnish as a reverse proxy/cache to multiple customer
> sites.
> As in, I have 10 different customers, each with its own web site (domains)
> with their own necessities, compression, cookie, authentication, etc; each
> customer is a different setup from the other, so I thought "OK! Let's use a
> different VCL for each customer and all will be fine".
>
> Bear with me here, I've just started playing with varnish, but it seems that
> I can't create a different VCL file for each customer and load it in varnish
> (vcl.use ...) as varnish will stop responding for the previous site and
> start responding only to the new one (active configuration). Meaning, the
> content that is served is only the content from the new site, even if using
> the correct domain.
>
> How can I go about setting this up?
> I'm using Varnish 2.0.1, just downloaded and compiled it today.
>   
Hi,

You can try something like this in one VCL:

sub vcl_recv {
  if (req.http.host ~ "^(www\.)site1\.com$"){
    # foo
  }

  if (req.http.host ~ "^(www\.)site2\.com$"){
    # bar
  }

  if (req.http.host ~ "^(www\.)site3\.com$"){
    # baz
  }

  # Unknown host
  error 403;
}

-- 
mvh
Espen Braastad,
+47 21 54 41 37
espen at linpro.no
Linpro AS - Ledende på Linux





More information about the varnish-misc mailing list