Re: неблокирующий аплоад

Валентин Бартенев vbart at nginx.com
Thu Mar 28 16:42:50 UTC 2013


On Thursday 28 March 2013 20:19:47 Anatoly Mikhailov wrote:
> On Mar 28, 2013, at 2:45 PM, Валентин Бартенев <vbart at nginx.com> wrote:
> > On Thursday 28 March 2013 16:34:21 Anatoly Mikhailov wrote:
> >> Вопрос по неблокирующему аплоаду больших файлов, в идеале без
> >> необходимости использовать проксирование на upstream.
> >> 
> >> 2 варианта:
> >> 1) nginx-upload-module
> >> 2) lua-resty-upload
> >> 
> >> Первый поломался с выходом nginx 1.3.9
> >> https://github.com/vkholodkov/nginx-upload-module/issues/41 Второй
> >> требует 2 дополнительных модуля (devkit, lua), но еще не
> >> production-ready
> >> 
> >> Что выбрать?
> > 
> > Пользоваться штатными средствами.
> > 
> > http://nginx.org/r/client_body_in_file_only/ru
> 
> уже почти готов это взять это в продакшн, но не хватает примеров
> и подробной документации, погуглил, ничего не нашел...
> 

Хорошо бы хоть примерное описание того, что требуется. Что подразумевается под 
"неблокирующий аплоад" мне лишь удалось догадаться из перечисленных модулей.

Использовать client_body_in_file_only очень просто. Включаете (on или clean) и
далее у вас в переменной $request_body_file путь к загруженному файлу. Что с
этим файлом делать - решать вам. Типичный сценарий - передать путь на бэкенд,
чтобы тот переместил файл в хранилище и добавил запись об этом в БД.

--
Валентин Бартенев
http://nginx.org/en/donation.html


Подробная информация о списке рассылки nginx-ru