Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Вебмастеру (http://forum.oszone.net/forumdisplay.php?f=22)
-   -   [решено] PHP|Скачать файл (http://forum.oszone.net/showthread.php?t=162462)

morgan1991 05-01-2010 17:01 1311544

PHP|Скачать файл
 
Здравствуйте!
Проблема в следующем:
Нужно открыть файл на удалённом сервере и передать его в браузер, но так чтоб браузер не выводил его на экран, а начал скачивать...
Пробовал так:
PHP код:

$OpenFile "http://94.198.240.87/downloadp5/4543.ac4608a62f7e51286fad6f253_RSFpq0JD7LvY/1150798/letitbit.net/Mozila_Firefox.rar";
$origFileName "Mozila_Firefox.rar";
header('Content-Disposition: attachment; filename="'.$origFileName.'"');
header("Content-Transfer-Encoding:* binary");
$fp = @fopen($OpenFile"rb");
while (!
feof($fp)) {
    
$st fread($fp99999999999999);
    echo 
$st;


И так:
PHP код:

$OpenFile "http://94.198.240.87/downloadp5/4543.ac4608a62f7e51286fad6f253_RSFpq0JD7LvY/1150798/letitbit.net/Mozila_Firefox.rar";
$origFileName "Mozila_Firefox.rar";
header('Content-Disposition: attachment; filename="'.$origFileName.'"');
header("Content-Transfer-Encoding:* binary");
readfile($OpenFile); 

И как только не старался, но качается только около 11 мб, а затем закачка обрывается...
Может это из-за хостинга? Может он не позволяет заниматься таким с PHP?
И вообще такие действия сильно нагружают сервер?

Пробовал на локальном компьютере, на Денвере, тоже самое...

Coutty 05-01-2010 17:32 1311575

Возможно, стоит ограничение по времени исполнения скрипта в 30 сек.
Так во втором случае закачка всё-таки идёт?

Sham 05-01-2010 17:42 1311584

см. memory_limit в php.ini

Это неимоверное грузилово! Необходимо предусмотреть кэширование файлов, чтобы загружать с удаленного сервера только единожды, а в остальных случаях отдавать уже загруженный файл.

morgan1991 05-01-2010 18:03 1311607

Цитата:

Цитата Coutty
Так во втором случае закачка всё-таки идёт? »

В обоих случаях не работает...
Цитата:

Цитата Coutty
Возможно, стоит ограничение по времени исполнения скрипта в 30 сек. »

На денвере стоит 60 сек, а на хостинге 30, а качает одинаково 11 мб...
Цитата:

Цитата Sham
Необходимо предусмотреть кэширование файлов »

Не полчится, хранить негде, нужно сразу юзеру отдавать файл...
Цитата:

Цитата Sham
Это неимоверное грузилово! »

Может есть другой вариант???

Igor_I 11-01-2010 21:44 1317593

nginx


Время: 03:49.

Время: 03:49.
© OSzone.net 2001-