stream server name question

Louis Garcia louisgtwo at gmail.com
Tue Aug 27 00:55:31 UTC 2019


I am able to use $ssl_preread_server_name to get the server name. This is
with https requests. Is there a corresponding embedded variable for http
requests? I would like to setup streams to different backend servers based
on http requests. Example below works for https but not http.
Thanks.

stream {
        map $ssl_preread_server_name $name {
                                            plex.montclaire.lan app1;
                                            transmission.montclaire.lan
app2;
                                            default default;
                                           }
        upstream app1 {
                       server 127.0.0.1:32400 max_fails=3 fail_timeout=10s;
                      }
        upstream app2 {
                       server 127.0.0.1:9091 max_fails=3 fail_timeout=10s;
                      }
        server {
                listen 172.16.0.5:80;
                listen 172.16.0.5:443;
                proxy_pass $name;
                ssl_preread on;
               }
       }
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.nginx.org/pipermail/nginx/attachments/20190826/858b242f/attachment.html>


More information about the nginx mailing list