Re: Альтернатива upload module?

Valery Kholodkov valery+nginxru at grid.net.ru
Tue Nov 17 18:05:23 MSK 2009


----- Dmitry Dedukhin <dedukhin at mail.ru> wrote:
> 
> > В случае NGX_UPLOAD_IOERROR или NGX_UPLOAD_TOOLARGE такое вполне можно 
> > реализовать. В дополнение, полагаю, нужна будет переменная, возвращающая 
> > статус загрузки того или иного файла, скажем, в http-кодах, чтобы бакэнду 
> > было понятно, что произошло.
> 
> Прошу прощения, я наверно неправильно выразился.
> Я не хочу такой функционал :)
> 
> Объясню подробнее.
> После загрузки файла во временную директорию он ставится в очередь, которая 
> обрабатывается асинхронно.
> Это позволяет максимально быстро известить клиентскую сторону об успешности 
> загрузки.
> До момента, когда дойдет очередь этого файла может пройти несколько минут.
> Иногда оказывается так, что в очереди есть информация о файле (т.е. загрузка 
> закончилась успешно и запрос был спроксирован на бэкенд), а по факту файла 
> во временной папке нет.
> Как так получается - непонятно... 

Такое возможно, если директива upload_cleanup в аргументах содержит коды 500, 502, 504, и после приема и обработки тела запроса возникла ошибка с одним из этих кодов. В этом случае модуль удалит файлы, в то время как бакэнд будет уведомлен о том, что они существуют.

-- 
Regards,
Valery Kholodkov


More information about the nginx-ru mailing list