У меня есть контейнеры докеров nginx-proxy и nginx-server.
client browser < > nginx-proxy
- http2 и 443 через proxy_pass.
nginx-proxy < > nginx-server
- http1, и я хотел бы переместить его на http2, но без SSL - поскольку они оба находятся на одном сервере, я не вижу преимущества шифрования трафика.
Я читал документы nginx, и они говорят, что он поддерживает http2 без ssl. поэтому я добавил 80 http2;
директиву listen в nginx-server vhost.
Однако вместо отображения веб-сайта браузер загружает файл со следующим содержимым:
0000 1204 0000 0000 0000 0300 0000 8000
0400 0000 0000 0500 ffff ff00 0004 0800
0000 0000 7fff 0000 0000 0807 0000 0000
0000 0000 0000 0000 01
это ужасно похоже Эта проблема но мой нет browser <> nginx
проблема, но nginx <> nginx
вопрос. Этого не должно быть, потому что в документации говорится, что nginx поддерживает http2 без ssl.
Как мне позволить nginx-proxy понять, что backend nginx-server говорит http2 ... Я думаю, это проблема, поскольку шестнадцатеричный дамп говорит: malformed packet
.
Эта проблема заявляет, что это невозможно и не будет реализовано.
Ваши преимущества от этого будут минимальными, поскольку задержка между программным обеспечением на одном сервере очень мала. Учитывая, что это либо очень сложно, либо невозможно, я бы не стал тратить на это ваше время.