Кодировка передачи фрагментированного nginx завершается неудачно

Я использую реализацию nginx с сервлетами Jetty.

Для целей моего проекта мне нужно инициализировать два соединения с сервлетом причала и оставить их открытыми. Для инициализации нисходящей линии связи я использую обычный запрос и получаю входной поток обратно. Для инициализации восходящей линии связи я использую запрос кодирования по частям.

Я использую версию 1.4.6 nginx, поэтому кодирование по частям должно быть установлено по умолчанию, независимо от того, что я установил в своем определении сервера.

 #HTTPS server

server {
    listen 443;
    listen [::]:443;
    server_name  localhost;

    ssl                  on;
    ssl_certificate      /etc/nginx/ssl/server.crt;
    ssl_certificate_key  /etc/nginx/ssl/server.key;

    ssl_session_timeout  5m;

    ssl_protocols  SSLv2 SSLv3 TLSv1;
    ssl_ciphers  HIGH:!aNULL:!MD5;
    ssl_prefer_server_ciphers   on;
    location / {
        proxy_http_version 1.1;
        expires off;
        proxy_buffering off; 
        chunked_transfer_encoding on;
        proxy_pass      https://127.0.0.1:8080;
    #    root   html;
    #    index  index.html index.htm;
    }
}

Я просмотрел все форумы и до сих пор не могу найти решение. Включено частичное кодирование, отключена прокси-буферизация и т. Д., И я не могу заставить его работать. Я также провел простые тесты, чтобы убедиться, что не моя реализация приложений как-то блокирует ее, и она все еще не работает.

Что-нибудь еще я могу попробовать?

1 ответ

Решение

Поэтому я также разместил сообщение на форуме nginx и получил ответ. То, что я специально ищу, называется "небуферизованная загрузка", и в настоящее время эта функция не предоставляется nginx.

Об использовании веб-сокетов не может быть и речи, потому что позже этот прототип необходимо будет внедрить в более крупную и более старую систему, использующую протокол http. Таким образом, ответ на это будет невозможен с "nginx". Любой, кто сталкивается с той же проблемой, может обойти эту проблему, используя tengine, который является вилкой nginx.

Другие вопросы по тегам