У меня есть Nginx 1.18 (не докеризованный) для размещения приложения REST API (работающего в контейнере Docker) в Ubuntu 20.04, и я пытаюсь установить proxy_request_buffering
выключено, чтобы разрешить загрузку больших файлов в потоковом режиме. Вот мои серверные блоки:
сервер {
имя_сервера мой домен;
расположение ~ ^/(api|статические\-данные|статические\-файлы)/ {
прокси_пароль http://127.0.0.1:5001;
прокси_http_версия 1.1;
proxy_set_header Обновить $http_upgrade;
proxy_set_header Поддержание соединения;
proxy_set_header Хост $host;
proxy_cache_bypass $http_upgrade;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $ схема;
proxy_connect_timeout 300;
proxy_send_timeout 300;
proxy_read_timeout 300;
send_timeout 300;
proxy_request_buffering выключен;
client_max_body_size 1000м;
client_body_buffer_size 1000м;
}
}
Но это не работает для меня.
Помимо API загрузки, у меня есть еще один API, чтобы показать прогресс. Когда API загрузки находится в состоянии ожидания, ответ API прогресса показывает, что мое приложение не получает запрос на загрузку до тех пор, пока файл не будет полностью буферизован Nginx.Итак, мое серверное приложение получает файлы полностью, а на стороне клиента индикатор выполнения показывает ноль процентов, пока не будет загружен весь файл.
Кстати, все в порядке, когда я тестирую локально с помощью
Пустельга. Любые идеи?