Получение процесса загрузки через Nginx + Unicorn
-
27-10-2019 - |
Вопрос
Я использую Nginx, чтобы обратить вспять прокси -процесс своего Unicorn для приложения Rails, который у меня есть. Я хотел бы иметь возможность получить статус прогресса (аналогично Apache-Upload-Progress-Module) для загрузки файлов. Я пытался использовать Nginxhttpuploadprogressmodule Но /прогресс по -прежнему маршрутирует приложение Rails, так что это не работает. Я следовал шагам в Nginxhttpuploadprogressmodule Так что я действительно нахожусь здесь.
Решение
Не видя точной конфигурации, которую вы внедрили, и журнал отладки, трудно понять, что может быть неправильно.
Я предлагаю тебе:
- Скомпилируйте nginx с опцией-с debug и активируйте журнал отладки с помощью директивы error_log.
- Проверьте журнал отладки для запроса /прогресса и посмотрите порядок проверенных мест.
Вполне возможно, что вы используете try_files, а местоположение /расположение Progress не запускается, потому что он расположен после вашего ловушки. Вы можете попытаться поместить местоположение /прогресс в верхней части вашего сервера {} Директива
Другие советы
Я использую это, есть
location ^~ /progress {
upload_progress_json_output;
report_uploads proxied;
}
раздел в блоке сервера, и он работает нормально, Rails никогда не видит /progress
.
Хорошо, я понял это с помощью вас обоих, ребята (Masterzen и JL). У меня не было
location ^~ /progress {
upload_progress_json_output;
report_uploads proxied;
}
но
location ^~ /progress {
report_uploads proxied;
}
и комментарий Masterzen также помог
location / {
# blah blah
}
Перед /прогрессом. Большое спасибо, ребята !!