stream server name question

Louis Garcia louisgtwo at gmail.com
Tue Aug 27 02:05:02 UTC 2019


Does not work.

stream {
        map $host $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;
               }
       }

nginx[31436]: nginx: [emerg] unknown "host" variable
nginx[31436]: nginx: configuration file /etc/nginx/nginx.conf test failed

On Mon, Aug 26, 2019 at 9:06 PM Phillip Odam <phillip.odam at nitorgroup.com>
wrote:

> Hi Louis
>
> The variable I think you're looking for is $host -
> http://nginx.org/en/docs/http/ngx_http_core_module.html#variables
>
> On 8/26/19 8:55 PM, Louis Garcia wrote:
>
> 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;
>                }
>        }
>
>
> _______________________________________________
> nginx mailing listnginx at nginx.orghttp://mailman.nginx.org/mailman/listinfo/nginx
>
> _______________________________________________
> nginx mailing list
> nginx at nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.nginx.org/pipermail/nginx/attachments/20190826/7f936602/attachment.html>


More information about the nginx mailing list