Я хочу использовать потоковый модуль nginx для проксирования HTTP-трафика. Это хорошо работает для HTTPS, поскольку ngx_stream_ssl_preread
модуль существует. Это позволяет мне извлечь запрошенное имя сервера из рукопожатия TLS, которое я затем могу использовать, чтобы определить, на какой сервер я должен проксировать поток. Однако я не могу найти эквивалента для простого HTTP.
Я предполагаю, что это связано с тем, что большинство людей просто используют обычный HTTP-прокси, поскольку прокси-сервер может видеть заголовок Host в HTTP-запросе (поскольку он не зашифрован). Однако использование потоков было бы гораздо более приятным решением для моего сценария, и оно кажется более легким, чем полный HTTP-прокси.
С ngx_stream_ssl_preread
модуль, вы получаете доступ к переменной с именем ssl_preread_server_name
. Я ищу что-то, что обеспечило бы по сути то же самое, но на основе Host
заголовок в HTTP-запросе. Такое существует?