upload module 2.0.8

Rauan Maemirov rauan at maemirov.com
Wed Dec 24 22:41:41 MSK 2008


Идея в том, чтобы ограничивать загрузку по типу файлов (выше написано
про то, что он прописывается в начале файла) и размеру на стадии
_начала_ загрузки, а не после.

Вы сами говорите, что не прочитать. :) А проверять тип по наличию
расширения в конце файла не очень правильно.

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

И еще, я упомянул про взятие mime-type'а из файла потому что не все
браузеры отправляют нужные типы. Opera и IE, вообще, 50/50.


2008/12/25 Alexey Kovyrin <alexey at kovyrin.net>:
> То, что вы рассказываете - это нужно на клиенте делать. Там, афаир,
> вам доступно только имя файла (и то не уверен). Контент файла
> жабаскриптом не почитать. Или я что-то не так понял в вашей идее?
>
> 2008/12/24 Rauan Maemirov <rauan at maemirov.com>:
>> Упс, не до конца объяснил (фича-реквест).
>>
>> Допустим есть сервис, на который загружаются только определенные типы
>> данных, если презентации, то pdf, ppt и т.д. для видео -
>> видеоформаты... музыка, картинки и т.д.
>>
>> Конечно можно проверять после загрузки, но вот в чем фишка:
>>
>> Как обычно делают все сервисы? Сначала грузишь себе огромный файл,
>> ждешь пока догрузится, а потом тебе сообщают, что такой тип файлов не
>> поддерживается. А между тем мы съели траффик, пользователь огорчился
>> (ну не знал он, что .exe - это не mp3-песенка), не говоря о том, что
>> грузились ресурсы...
>>
>> А вот если бы сразу проверялись типы данных и выкидывались если не
>> поддерживается формат.
>>
>> Было бы вообще супер, если можно делать что-то вроде map. Ограничение
>> для длинного списка форматов видео - 100mb, картинок - 2mb, список
>> аудиоформатов - 5mb.
>>
>> 2008/12/24 Александр Кутузов <alleteam at gmail.com>:
>>> Это называется mime-magic,
>>> вопрос только на..я?
>>>
>>> 25.12.2008, в 0:23, Rauan Maemirov написал(а):
>>>
>>>> Вряд ли, расширение можно поменять... Разве тип содержимого не
>>>> записывается в начале файла?
>>>>
>>>> 2008/12/24 Valery Kholodkov <valery+nginxru at grid.net.ru>:
>>>>>
>>>>> Долго пытался понять каким образом и из какого файла их извлекать. Может
>>>>> из
>>>>> имени загружаемого файла?
>>>>>
>>>>> Rauan Maemirov wrote:
>>>>>>
>>>>>> Кстати, еще один момент. Можно ли сделать так, чтобы mime_type-ы
>>>>>> брались из файла, а не из header-ов?
>>>>>>
>>>>>> 2008/12/22 Valery Kholodkov <valery+nginxru at grid.net.ru>:
>>>>>>>
>>>>>>> Думаю, это воспроизводимо, если клиент запрашивает прогресс в тот
>>>>>>> момент,
>>>>>>> когда результативное тело в процессе отсылки или обработки бакэндом.
>>>>>>> Посмотрю upload progress на досуге ещё раз.
>>>>>>>
>>>>>>> Тем не менее, объединение двух модулей было бы архитектурной ошибкой,
>>>>>>> по
>>>>>>> той же причине, по какой в юниксе не объединены вызовы fork и exec --
>>>>>>> можно
>>>>>>> получить больше вариантов использования. А именно upload без progress и
>>>>>>> progress без upload.
>>>>>>>
>>>>>>> ----- Original Message -----
>>>>>>> From: "Rauan Maemirov" <rauan at maemirov.com>
>>>>>>> To: nginx-ru at sysoev.ru
>>>>>>> Sent: Sunday, December 21, 2008 2:47:19 PM GMT +01:00 Amsterdam /
>>>>>>> Berlin
>>>>>>> / Bern / Rome / Stockholm / Vienna
>>>>>>> Subject: Re: upload module 2.0.8
>>>>>>>
>>>>>>> Когда файл догружается, прогресс не может определить размер файла
>>>>>>> (запроса), так как upload module переписывает POST. Я обращался к
>>>>>>> разработчику progress module, он обещал сделать версию для upload-а,
>>>>>>> опубликовал одну версию, но она не заработала... Это было месяца 3
>>>>>>> назад, видно забыл. :)
>>>>>>>
>>>>>>> Это конечно не критично, но все же когда из 20 мегабайт прогресс
>>>>>>> становится однобайтовым, пользователь может потеряться.
>>>>>>>
>>>>>>> 2008/12/21 Valery Kholodkov <valery+nginxru at grid.net.ru>:
>>>>>>>>
>>>>>>>> Что мешает использовать оба модуля в связке?
>>>>>>>>
>>>>>>>> Sergey Serov wrote:
>>>>>>>>>
>>>>>>>>> Модуль замечательный, только нехватает ему функциональности модуля
>>>>>>>>> upload_progress. Тогда было бы законченное и комплексное решение.
>>>>>>>>
>>>>>>>> --
>>>>>>>> Regards,
>>>>>>>> Valery Kholodkov
>>>>>>>>
>>>>>>>>
>>>>>>> --
>>>>>>> Regards,
>>>>>>> Valery Kholodkov
>>>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Regards,
>>>>> Valery Kholodkov
>>>>>
>>>>>
>>>
>>>
>>> Kind regards,
>>> Alexandr Kutuzov, alleteam at gmail.com
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>
>
>
>
> --
> Alexey Kovyrin
> http://kovyrin.info/
>


More information about the nginx-ru mailing list