Я создаю службу загрузки на основе PHP для некоторых наших клиентов. Я использую SWFUpload, чтобы я мог просматривать ход файла по мере его загрузки. У меня это довольно много построено, но я столкнулся с одним последним вопросом, прежде чем мы можем опубликовать его для публики.
Многие (почти все) наши клиенты основаны на Mac и загружают наборы файлов, которые включают файлы InDesign, шрифты, файлы Illustrator и т.д. В большинстве случаев файлы изображений в порядке, но иногда (и всегда с типом 1), файл будет поврежден, потому что он потеряет ресурс ресурса.
Я понимаю, почему это происходит (переход от многопроцессорной системы к системе с одним файлом), но я не могу найти ничего элегантного решения. В моем исследовании лучший ответ, который я нашел до сих пор, - "заставить пользователя сжать его". Я знаю, что это работает, но это необоснованно - по нашему мнению, - для нас требовать от них сжимать каждый набор файлов, которые они собираются отправить.
Есть ли лучшие решения для сохранения этих ресурсных вилок? Конечно, я бы предпочел решение, которое является прямым javascript/php, но будет соглашаться на что-то, основанное на flash или (наименее предпочтительно) на основе java.
Мои единственные требования к новому решению:
- Просмотр процесса загрузки
- Пользователю не нужно вручную сжимать файлы.
Вот некоторая информация о моей системе
- Сервер Ubuntu 10.10, на котором установлена стандартная установка LAMP
- PHP5
- SWFUpload (самая последняя версия - wtv)