Что говорит запрос XHR в середине потока? Если он говорит «запуск», я решил это, изменив порядок директив в nginx.conf, хотя ваш выглядит так же, как мой.
Как только я это сделал, он отправил данные JSON, я обнаружил, что jQuery 1.4 не учитывает искаженные данные JSON. Я добавил директиву upload_progress_json_output для обеспечения правильного формирования JSON.
location ^~ /progress {
upload_progress_json_output;
report_uploads proxied;
}