Upload -Prozess über Nginx + Unicorn
-
27-10-2019 - |
Frage
Ich verwende Nginx, um meinen Unicorn -Prozess für eine Rails -App, die ich habe, den Proxy umzukehren. Ich möchte in der Lage sein, einen Fortschrittsstatus zu erhalten (ähnlich wie Apache-Upload-Programm-Modul) Für Datei -Uploads. Ich habe versucht zu benutzen NginxhttpUploadProgressmodul Aber /Fortschritt wendet immer noch zur Rails -App, so dass das nicht funktioniert. Ich folgte den Schritten in NginxhttpUploadProgressmodul Also bin ich hier wirklich an einem Stopppunkt.
Lösung
Ohne die genaue Konfiguration zu sehen, die Sie implementiert haben, oder das Debugg -Protokoll, ist es schwierig zu verstehen, was falsch sein kann.
Ich schlage dich vor:
- Kompilieren Sie Nginx mit der Option--with-debug und aktivieren Sie das Debug-Protokoll mit der ERROR_LOG-Direktive.
- Überprüfen Sie das Debug -Protokoll für die /Fortschrittsanforderung und suchen Sie in der Reihenfolge der getesteten Standorte.
Es ist gut möglich, dass Sie Try_files verwenden und Ihr /Fortschrittsstandort nicht ausgelöst wird, da es sich nach Ihrem Fangstort befindet. Sie können versuchen, den Standort /Fortschrittsstandort ganz oben auf Ihrem Server {} zu setzen
Andere Tipps
Ich benutze es, habe eine
location ^~ /progress {
upload_progress_json_output;
report_uploads proxied;
}
Abschnitt im Serverblock und es funktioniert gut, Rails sieht nie /progress
.
Okay, ich habe es mit Hilfe von euch beider (Masterzen und JL) herausgefunden. Ich hatte nicht
location ^~ /progress {
upload_progress_json_output;
report_uploads proxied;
}
aber
location ^~ /progress {
report_uploads proxied;
}
und Masterzens Kommentar half auch so, wie ich hatte
location / {
# blah blah
}
vor dem /Fortschritt. Vielen Dank Jungs !!