$ctype = "application/tgz";
header("Pragma: public");
header("Expires: 0");
header("Accept-Ranges: bytes");
header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
header("Content-Type: $ctype");
header("Content-Disposition: attachment; filename=filename1.tgz");
header("Content-Transfer-Encoding: binary");
$filename = "/folder/file.tgz";
$handle = fopen($filename, "r");
while( $contents = fread($handle, 1024))
{
echo $contents;
flush();
}
fclose($handle);
Спустя 8 минут, 31 секунда (22.06.2010 - 15:44) Night User написал(а):
М... пропущено $handle = fopen($filename, "r");
В любом случае у меня с файлом 6,71 мб все работает
В любом случае у меня с файлом 6,71 мб все работает
Спустя 7 минут, 56 секунд (22.06.2010 - 15:52) Winston написал(а):
Может тогда так ?
$filename = "/folder/file.tgz";
$size = filesize($filename);
while( $contents = fread($handle, $size))
{
echo $contents;
flush();
}
Спустя 6 минут, 22 секунды (22.06.2010 - 15:58) waldicom написал(а):
Цитата (kilotsun @ 22.06.2010 - 14:35) |
Я уже проверил все параметры apatch и php что связаны с лимитированием памяти и времени |
Все ли? И post_max_size тоже?
Спустя 10 минут, 20 секунд (22.06.2010 - 16:09) kilotsun написал(а):
post_max_size - я вообще поставил 128М
да, я при копировании и оформлении случайно удалил $handle = fopen($filename, "r");
попробовал прочитать целым куском - тот же эффект
сервер отдает пустой файл с правильным именем.
да, я при копировании и оформлении случайно удалил $handle = fopen($filename, "r");
попробовал прочитать целым куском - тот же эффект
сервер отдает пустой файл с правильным именем.
Спустя 1 час, 30 минут, 47 секунд (22.06.2010 - 17:39) twin написал(а):
Вообще для таких целей есть readfile() или еще лучше fpassthru()
Спустя 15 часов, 5 минут, 25 секунд (23.06.2010 - 08:45) kilotsun написал(а):
readfile() я тоже пробовал использовать, не выходит
может быть у меня php или apache неправильно настроен?
какие параметры могли на это повлиять? ((
может быть у меня php или apache неправильно настроен?
какие параметры могли на это повлиять? ((