]> git.kaiwu.me - nginx.git/commit
Stream: ngx_stream_pass_module.
authorRoman Arutyunyan <arut@nginx.com>
Wed, 21 Feb 2024 13:36:02 +0000 (17:36 +0400)
committerRoman Arutyunyan <arut@nginx.com>
Wed, 21 Feb 2024 13:36:02 +0000 (17:36 +0400)
commita168b810e23627070271dc8bab61cfd6f0caddd7
tree08a97e432ca6307fa52d73e387b9d0da660540c7
parentd21675228a0ba8d4331e05c60660228a5d3326de
Stream: ngx_stream_pass_module.

The module allows to pass connections from Stream to other modules such as HTTP
or Mail, as well as back to Stream.  Previously, this was only possible with
proxying.  Connections with preread buffer read out from socket cannot be
passed.

The module allows selective SSL termination based on SNI.

    stream {
        server {
            listen 8000 default_server;
            ssl_preread on;
            ...
        }

        server {
            listen 8000;
            server_name foo.example.com;
            pass 127.0.0.1:8001; # to HTTP
        }

        server {
            listen 8000;
            server_name bar.example.com;
            ...
        }
    }

    http {
        server {
            listen 8001 ssl;
            ...

            location / {
                root html;
            }
        }
    }
auto/modules
auto/options
src/stream/ngx_stream_pass_module.c [new file with mode: 0644]