| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > PHP: Общие вопросы > Скачивание больших файлов |
| Автор: Bounty 16.1.2008, 16:22 | ||
| Помогите, плиз! У меня стоит задача, чтобы пользователь с закрытой странички скачивал файлы. Сами файлы лежат за пределами www (на уровень выше) Проблема в том, что маленькие файлы скачиваются просто, а вот большие (видеоролики, например, 100Мб) вообще не скачиваются... Вот код файла в который скачивает файлы:
Я уже не знаю, в чем может быть проблема...:( |
| Автор: MoLeX 16.1.2008, 16:36 | ||||
а так
Добавлено через 1 минуту и 2 секунды
точно, у меня то это фсе намного больше стоит))) вот не полные пути и посоветовал |
| Автор: Bounty 25.1.2008, 11:08 |
| Я так поняла, что именно при readfile файл в опу идет, а на сервере стоит ограничение много меньшее 100Мб...((( Как быть иначе? ведь файлы за пределами www |
| Автор: flashaa 25.1.2008, 11:39 |
Думаю, здесь и проблема. Если файл доступен юзеру он должен быть в www. Это исходя просто из логики. Вообще с такой задачей не сталкивался и сходу не могу сообразить, как лучше. Можно, допустим прикрывать ваши файлы htaccess. А когда пользователь получает доступ к файлу, дописывать правило mod_rewrite c каким-то случайным хешем. К примеру, такую строку: RewriteRule ^file/sdas123fsklg123h downloads/имя_вашего_файла_на_скачивание и соответственно пересылать пользователя на адрес file/sdas123fsklg123h, чтобы он мог скачать. При этом истинное имя и расположение файла он не узнает. Если от условия, что файлы выше www, не уйти, то можно попробовать решить две проблемы(с памятью и временем работы) так: 1) считать файл по фрагментам, тогда память не будет занята. 2) установить set_time_limit(0) - это отключит ограничение по времени, хотя не уверен на счет того, что это разрешается на всех хостингах. Имхо, здесь ошибка в архитектуре. Донлоад файлов через скрипт таким образом это же совсем для скриптов задача. |