Upstream to both https or http

Maxim Dounin mdounin at mdounin.ru
Sun Apr 17 13:24:57 MSD 2011


Hello!

On Sun, Apr 17, 2011 at 03:24:57AM -0400, speedfirst wrote:

> I have this requirement. I want to use nginx as the reverse proxy, which
> listen on address A and forward the request to the backend server with
> address B. However, if B is down, I want the request to be sent to
> address C. The question is, address B is https and address C is http.
> But for the argument of proxy_pass module, I can only write one prefix
> (either "http" or "https").
> 
> upstream backend {
>       server <addr B ip>:<addr B port>;
>       server <addr C ip>:<addr C port> backup;
> }
> 
> location / {
>      proxy_pass  http://backend;   #here, only one prefix is allowed
> }
> 
> So how to config to meet my requirements? Or here I shouldn't use
> upstream but other approach?

    location / {
        proxy_pass https://B;
        error_page 502 504 = @fallback;
    }

    location @fallback {
        proxy_pass http://C;
    }

Maxim Dounin



More information about the nginx mailing list