Vaadin 8 + Tomcat 9 + прокси nginx + Websocket + SSL

ВЕРСИИ:

Ядро Vaadin Client версии 8.4.3 Ядро Vaadin Server версии 8.4.3 Vaadin Theme версия 8.4.3 Vaadin Push версия сервера 2.4.24.vaadin1 Vaadin Push версия клиента 2.3.2.vaadin1-javascript (примечание: не нужно совпадать с версией сервера))

Tomcat: 9.0.8 nginx: 1.12.2

У меня есть эта конфигурация:

Приложение Vaadin 8, подается через Tomcat 9.

Приложение имеет ручной толчок с транспортной сеткой.

Если я использую приложение, подаваемое непосредственно из Tomcat, то соединение Websocket работает правильно.

Также работает загрузка в приложение файлов 10 Мб.

Если я использую приложение через прокси-сервер nginx, загрузка работает только для очень маленьких файлов (около 80 КБ), и веб-сокет изначально работает, но через 30 секунд приложение зависает (я думаю, что веб-сокет закрывается).

Если я прокомментирую строки обновления в конфигурации nginx, приложение вернется к методу длинных опросов и будет работать (но это медленно!).

Это конфигурация nginx:

location / {
    proxy_http_version 1.1;
    proxy_pass http://demo/app/;
    proxy_cache demo;
    proxy_set_header Host $host;
    proxy_set_header X-Forwarded-Host $host;
    proxy_set_header X-Forwarded-Server $host;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_cookie_path /app /;
    error_page 500 502 503 504 /server_down.html;

    # this lines make websocket work for 30 secs:
    #proxy_set_header Connection $http_connection;
    #proxy_set_header Connection "upgrade";
}

Любая помощь будет оценена!

0 ответов

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