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