Nginx multiple upstream with different protocols

Kilian Ries mail at kilian-ries.de
Wed Feb 22 14:55:06 UTC 2017


Hi,


i'm trying to setup two Nginx upstreams (one with HTTP and one with HTTPS) and the proxy_pass module should decide which of the upstreams is serving "valid" content.


The config should look like this:


upstream proxy_backend {

        server xxx.xx.188.53;

        server xxx.xx.188.53:443;

}


server {

        listen 443 ssl;

        ...

        location / {

                proxy_pass http://proxy_backend;

                #proxy_pass https://proxy_backend;

        }

     }



The Problem is that i don't know if the upstream is serving the content via http or https. Is there any possibility to tell nginx to change the protocol from the proxy_pass directive? Because if i set proxy_pass to https, i get an error (502 / 400) if the upstream website is running on http and vice versa.


So i'm searching for a way to let Nginx decide if he should proxy_pass via http or https. Can anybody help me with that configuration?


Thanks

Greets

Kilian
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.nginx.org/pipermail/nginx/attachments/20170222/afbb436a/attachment.html>


More information about the nginx mailing list