[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Загрузка файлов на сервер 50-100Mb
yuap
Добрый день! Встал вопрос в одном из проектов загрузки больших файлов, размером 50-100Мб. На данный момент есть 3 решения, как это организовать:
1. Использовать сервис http://www.bitoman.ru/profile/api.html , почему то похожих решений на других подобных сервисах не нашел.
2. Использовать файлообменники, но тогда нет возможности пользователям грузить файл из админ панели (а это очень плохо).
3. Использовать флеш JQuery Uploadify или SWFUpload
Подскажите, есть ли еще какие-нибудь интересные решения и кто применял для загрузки флеш, действительно ли он способен загрузить большой файл, даже если в php.ini стоят ограничения?



Спустя 15 минут, 11 секунд (9.10.2012 - 09:45) Winston написал(а):
Цитата (yuap @ 9.10.2012 - 09:30)
кто применял для загрузки флеш, действительно ли он способен загрузить большой файл, даже если в php.ini стоят ограничения

Флеш, ничего не загружает, он лишь вызывает и передает данные в php файл, который уже и занимается загрузкой файлов на сервер.
К тому же ограничения ты вряд ли обойдешь.
Проще тогда взять выделенный сервер и настроить php.ini как тебе угодно

Спустя 50 минут, 6 секунд (9.10.2012 - 10:35) yuap написал(а):
Цитата (Winston @ 9.10.2012 - 06:45)
Флеш, ничего не загружает, он лишь вызывает и передает данные в php файл, который уже и занимается загрузкой файлов на сервер.
К тому же ограничения ты вряд ли обойдешь.
Проще тогда взять выделенный сервер и настроить php.ini как тебе угодно

Т.е. хотите сказать что передавать файл напрямую через http <input type="file" либо через флеш, это одно и тоже?
Получается я понял не правильно, я думал, что файл грузит именно флеш. Тогда флеш на который было столько надежд отпадает. Флеш не более чем красивая реализация при загрузки?
Выделенный сервер это крайняя мера, хочется обойтись малой кровью, и узнать какие еще могут быть реализации.

Спустя 9 минут, 12 секунд (9.10.2012 - 10:44) killer8080 написал(а):
Цитата (yuap @ 9.10.2012 - 10:35)
Получается я понял не правильно, я думал, что файл грузит именно флеш.

Флеш сам грузит файл, ты все правильно понял. Главное преимущество, можно организовать прогрессбар, при загрузке больших файлов это важно, кроме того, swfupload грузит файлы по одному, а не все скопом, как обычная форма, это полезно когда суммарный вес файлов превышает лимит. На ограничения сервера это естественно не влияет, серверу по фиг кто ему данные передает, браузер, или флеш. Есть еще один нюанс, флеш устанавливает соединение самостоятельно, поэтому куки браузера он передавать не будет, для поддержания сессии нужно позаботатится о передачи идентификатора через post.

Спустя 34 минуты, 29 секунд (9.10.2012 - 11:19) Winston написал(а):
Цитата (killer8080 @ 9.10.2012 - 10:44)
Флеш сам грузит файл, ты все правильно понял

Тогда это я неправильно понял? :blink: Когда делал загрузку через swfupload, то он все отдавал php, а тот уже в свою очередь уже загружал файлы
flash_url: "swfupload.swf",
upload_url: "upload.php",

Указывается ведь php обработчик

Спустя 6 минут, 7 секунд (9.10.2012 - 11:25) killer8080 написал(а):
Цитата (Winston @ 9.10.2012 - 11:19)
Тогда это я неправильно понял? blink.gif Когда делал загрузку через swfupload, то он все отдавал php, а тот уже в свою очередь уже загружал файлы

Ну вообще аплоад - это и есть сам процесс передачи от клиента к серверу, как будет происходить обработка на серверной стороне, это уже другой вопрос. Флеш плеер устанавливает соединение самостоятельно, минуя браузер.

Спустя 55 минут, 32 секунды (9.10.2012 - 12:20) yuap написал(а):
Цитата (killer8080 @ 9.10.2012 - 08:25)
Цитата (Winston @ 9.10.2012 - 11:19)
Тогда это я неправильно понял? blink.gif Когда делал загрузку через swfupload, то он все отдавал php, а тот уже в свою очередь уже загружал файлы

Ну вообще аплоад - это и есть сам процесс передачи от клиента к серверу, как будет происходить обработка на серверной стороне, это уже другой вопрос. Флеш плеер устанавливает соединение самостоятельно, минуя браузер.

Спасибо! Определенно буду пробовать через флеш.
Получается ограничения в php.ini указаны именно для загрузки файлов по http протоколу до обработчика, а не ограничения на процесс обработки загруженного файла? Подобный вопрос у меня возникал когда я переносил большую базу MySQL через bigdump.php, там закаченный через ftp файл sql около 100Mb обрабатывался на сервере несмотря на ограничения указанные в php.ini
И если реализовывать таким образом загрузку через админ панель, то нужно достать в куках идентификатор сессии и отправить его POSTом на upload.php, где дополнительно будет реализована проверка пользователя?

Спустя 51 минута, 51 секунда (9.10.2012 - 13:12) killer8080 написал(а):
У swfupload есть метод addPostParam при инициализации скрипта, через него можно установить пост параметры.
swfu.addPostParam('<?=session_name()?>', '<?=session_id()?>');


На серверной стороне, перед стартом сессии, делаем привязку

if(!empty($_POST[session_name()]))
session_id($_POST[session_name()]);
session_start();
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.