Abbruch bei Download

moistwanted

Erfahrenes Mitglied
Hi Leute!

Ich will auf meiner Seite Downloads anbieten, die so 100-250 MB groß sind.
Da der Pfad zu den Dateien aber nicht sichtbar sein soll, benutz ich das Script:

Code:
header('Content-Type: application/octet-stream');
header('Content-Disposition: attachment; filename="'.$file.'"');
header('Content-Length: '.filesize($filename));
while (!feof($dlfile))
{
  $bytes=1024;
  if ($kbs>0)
  {
   $bytes*=$kbs;
  }
  echo fread($dlfile,$bytes);
  flush();
  if ((!feof($dlfile)) && ($kbs>0))
  {
   sleep(1);
  }
} 
fclose($dlfile);

Nur bechen die Downloads immer nach einiger Zeit ab!
Weiß vielleicht jemand was ich da machen kann, damit das ganze stabil läuft?
 
Quote von php.net

For download the big files (more than 8MB), you must used ob_flush() because the function flush empty the Apache memory and not PHP memory.
And the max size of PHP memory is 8MB, but ob_flush is able to empty the PHP memory.

header('Content-Type: application/force-download');
header ("Content-Length: " . filesize($file));
header ("Content-Disposition: attachment; filename=$theFileName");

$fd = fopen($file, "r");
while(!feof($fd))
{
echo fread($fd, 4096);
ob_flush();

}
 
Habs jetzt hinbekommen!
Lag an der Ausführungszeit des Scripts!
Hab das einfach via set_time_limit(5); hochgesetzt und jetzt gehts!
 
Zurück