Pass#

Позволяет передавать принятое соединение напрямую на любой настроенный слушающий сокет в модуль HTTP, потоковый или почтовый модули.

Модуль допускает выборочную SSL-терминацию на основе SNI.

Пример конфигурации#

После того, как модуль stream завершит обработку SSL/TLS, он передает соединение в модуль http:

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;
        }
    }
}

Директивы#

pass#

Синтаксис

pass адрес;

По умолчанию

Контекст

server

Эта директива задает адрес сервера, на который должно быть передано клиентское соединение. Адрес можно указать как IP-адрес и порт:

pass 127.0.0.1:12345;

Или как путь к UNIX-сокету:

pass unix:/tmp/stream.socket;

Также адрес можно задать с помощью переменных:

pass $upstream;