Two Different Backends
    Michael Alger 
    varnish at mm.quex.org
       
    Tue Mar 22 10:54:17 CET 2011
    
    
  
On Tue, Mar 22, 2011 at 10:42:54AM +0100, Stefan Welschhoff wrote:
> 
> I want to configure varnish with two different backends. But with
> my configuration varnish can't handle with both.
There is a logic error here:
>         if (req.url ~"^/partner/")
>          {
>                 set req.backend = directory1;
>                 set req.http.host = "partnerservicesq00.xxx.de";
>          }
The above if-clause will be run, and then, regardless of the
outcome, the next if-else-clause will be run:
>         if (req.url ~"^/schaden/")
>         {
>                 set req.backend = directory2;
>                 set req.http.host = "servicesq00.xxx.de";
>          }
>         else
>         {
>            set req.backend = default;
>         }
This means that if the URL matched /partner/ the backend will get
set to back to default, because it falls through to the "else".
I think you want your second if for /schaden/ to be an elsif.
          if (req.url ~ "^/partner/")
          {
          }
          elsif (req.url ~ "^/schaden/")
          {
          }
          else
          {
          }
If that's not the problem you're having, please provide some more
information, i.e. backend configuration and error messages if any,
or the expected and actual result.
    
    
More information about the varnish-misc
mailing list