![]() |
|
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]()
|
|
| Bounty |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 48 Регистрация: 12.12.2005 Репутация: нет Всего: нет |
Помогите, плиз!
У меня стоит задача, чтобы пользователь с закрытой странички скачивал файлы. Сами файлы лежат за пределами www (на уровень выше) Проблема в том, что маленькие файлы скачиваются просто, а вот большие (видеоролики, например, 100Мб) вообще не скачиваются... Вот код файла в который скачивает файлы:
Я уже не знаю, в чем может быть проблема...:( |
|||
|
||||
| flashaa |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 796 Регистрация: 7.3.2006 Репутация: 19 Всего: 25 |
У скрипта есть ограничения на используемую память и время работы... Ограничение по дефолту 8 МБ.. Подумайте, как скрипт может считать 100 МБ и уместить в 8 МБ. Потом при отправке идет время... По дефолту это 30 сек. Выдавать такие громадные файлы скриптом соответственно неэффективно. |
|||
|
||||
| MoLeX |
|
|||
![]() Местный пингвин ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 4076 Регистрация: 17.5.2007 Репутация: 46 Всего: 140 |
а так
Добавлено через 1 минуту и 2 секунды точно, у меня то это фсе намного больше стоит))) вот не полные пути и посоветовал -------------------- Amazing |
|||
|
||||
| Bounty |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 48 Регистрация: 12.12.2005 Репутация: нет Всего: нет |
Я так поняла, что именно при readfile файл в опу идет, а на сервере стоит ограничение много меньшее 100Мб...(((
Как быть иначе? ведь файлы за пределами www |
|||
|
||||
| flashaa |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 796 Регистрация: 7.3.2006 Репутация: 19 Всего: 25 |
Думаю, здесь и проблема. Если файл доступен юзеру он должен быть в www. Это исходя просто из логики. Вообще с такой задачей не сталкивался и сходу не могу сообразить, как лучше. Можно, допустим прикрывать ваши файлы htaccess. А когда пользователь получает доступ к файлу, дописывать правило mod_rewrite c каким-то случайным хешем. К примеру, такую строку: RewriteRule ^file/sdas123fsklg123h downloads/имя_вашего_файла_на_скачивание и соответственно пересылать пользователя на адрес file/sdas123fsklg123h, чтобы он мог скачать. При этом истинное имя и расположение файла он не узнает. Если от условия, что файлы выше www, не уйти, то можно попробовать решить две проблемы(с памятью и временем работы) так: 1) считать файл по фрагментам, тогда память не будет занята. 2) установить set_time_limit(0) - это отключит ограничение по времени, хотя не уверен на счет того, что это разрешается на всех хостингах. Имхо, здесь ошибка в архитектуре. Донлоад файлов через скрипт таким образом это же совсем для скриптов задача. Это сообщение отредактировал(а) flashaa - 25.1.2008, 11:40 |
|||
|
||||
![]()
|
| Правила форума "PHP" | |
|
|
Новичкам:
Важно:
Внимание:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | PHP: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |