PHP поддержка докачки и holm.ru
Так вот вопрос: нельзя ли сделать так, чтобы скрипт echo'м выдавал содержимое файла, а потом тут же вырубался, а данные бы отдавал уже сервер? То есть, чтобы это 30 сек. ограничение было уже фиолетово?
А на holm.ru отменили set_time_limit()?
Видимо, отменили... Я вот попробовал сейчас set_time_limit (0) и set_time_limit (60*60*24), ни один не помог. Всё равно связь, как гандола.
Всю жизнь прожил и думал, что PHP совсем не учавствует в скачивании файлов... Мистика, блин. Видимо, какие-то пробелы в знаниях....
А как же все эти многочисленные download.php? Без них докачка не работает... Т.е идея в том, что мы смотрим, с какого байта начиная надо выдать файл, и echo'м выдаём.
Не совсем понимаю конечно, но по моемому это писец. Качаем фильм через мопед и всё это время итерпритатор должен работать... Бред, при чём полный. Для скачиванию существует масса даунлодеров (flashget, reget и т.д.) и докачку они поддерживают.
ЭЭЭ. Это серверная часть! То есть чтобы скачать файл, я иду не по ссылке site.ru/file.ext, а по ссылке site.ru/download.php?name=file.ext. А уже твой Регет или ещё кто будет передавать переменную HTTP_RANGE - значение которой равно длине уже скачанной части файла, начиная с его начала. download.php открывает fopen'ом нужный файл, fseek'ает на нужное место и делает, например, fpassthru, таким образом выдавая данные файла прямо в выходной поток. Вот у меня и вопрос, должен ли всё это время интерпретатор работать??? То есть, print/echo синхронен или нет? Т.е ждёт он, пока данные клиента достигнут или нет?
Никак не врублюсь - причём тут download.php? Он максимум что делает - увеличивает на единицу счётчик скачиваний файла. А само файло раздаёт файловая система. В том числе и занимается определением, с какого места файл выдавать в поток.
Причём тут PHP, который совершенно понятия не имеет о наличии файловой системы как таковой? У PHP есть конечно несколько возможностей пообщаться с файловой системой, но это совсем о другом балет-то...
Попробуй скачать http://vmx.h15.ru/study/statfiz.rar просто и через download.php: http://vmx.h15.ru/download.php?fileid=7
Может это я чего не понимаю, но ведь апач резюминг не поддерживает обычно?
А ты в Регете или ещё там где никогда не замечал "This server does not support resuming"?
Попробуй скачать http://vmx.h15.ru/study/statfiz.rar просто и через download.php: http://vmx.h15.ru/download.php?fileid=7
Может это я чего не понимаю, но ведь апач резюминг не поддерживает обычно?
This server does not support resuming - где здесь упоминается download.php? А если это ftp-сервант, которому php в страшном сне даже не снилось? Где логика?
Apache - сервер, программа. Вместе с ним работают еще кучи программ. В том числе и php. Которого не было еще десять лет назад. А докачки и закачки были всегда. Еще со времён, когда Авраам родил Исаака.
Вся потеха в том, что у любого файла есть как минимум три параметра: имя, время и размер в байтах. Этих трёх вещей вполне достаточно, чтобы обеспечить его переливание с одного компутера на другой. Если сеанс прекращается, то его можно докачать, начиная почти с того места, на котором всё прекратилось. Но только в том случае, если ни один из вышеупомянутых параметров не изменился.
Ну хорошо, но тогда почему с того же холма оно не докачивается без download.php? И с многих других сайтов тоже.
А ты не пробовал от кого нибудь другого качать? РНР тут действительно не причем.
А ты не пробовал от кого нибудь другого качать? РНР тут действительно не причем.
Да ну, блин. Как это ни при чём. Без него оно не докачивается. С любого сайта на hXX.ru
Да ну, блин. Как это ни при чём. Без него оно не докачивается. С любого сайта на hXX.ru
Еще раз. PHP, а уж тем более downloads.php тут не при делах. Ищи причину в непосредственно хохмах. ШаровОй хостинг - он даже в Республике Чад шаровой хостинг. Если есть желание сделать нечно путное - заплати сотню баксов за год и живи нормально.
Дано: vmx.h15.ru
Надо: поддержка загрузки файлов с докачкой.
БылоБыРешение: идём ya.ru и вбиваем в поиск "php поддержка докачки файлов"; скачиваем готовый скрипт и используем.
Грабля: связь через ~30 секунд обрывается без предупреждения.
Почему: вероятно, из-за ограничения времени исполнения.
Вот мне надо решить такую задачу.
Почему: вероятно, из-за ограничения времени исполнения.
Вероятно из-за тупорылости шарового хостинга агавы.
"...ищи на третьей планете...." (С)