mvf
Guest
Еще вопрос про докачку
Здравствуйте.
Не могу понять в чем дело? Есть скрипт докачки файлов (взял из примеров), вот кусок:
Проблема в следующем: когда начинаем качать вылетает ошибка сервера (500 Internal Server Error) и в логах сервера появляется строка:
malformed header from script. Bad header=HTTP/1.1 200 OK: php.exe
или
malformed header from script. Bad header=HTTP/1.1 206 Partial Content: php.exe
Не подскажете, как исправить?
Заранее спасибо.
Здравствуйте.
Не могу понять в чем дело? Есть скрипт докачки файлов (взял из примеров), вот кусок:
PHP:
...
if(!file_exists($filename))
{
header("HTTP/1.0 404 Not Found");
exit;
}
$fsize = filesize($filename);
$ftime = date("D, d M Y H:i:s T", filemtime($filename));
$fd = @fopen($filename, "rb");
if(!$fd)
{
header ("HTTP/1.0 403 Forbidden");
exit;
}
// Если запрашивающий агент поддерживает докачку
if($HTTP_SERVER_VARS["HTTP_RANGE"])
{
$range = $HTTP_SERVER_VARS["HTTP_RANGE"];
$range = str_replace("bytes=", "", $range);
$range = str_replace("-", "", $range);
if($range)
{
fseek($fd, $range);
}
}
$content = fread($fd, filesize($filename));
fclose($fd);
if($range)
{
header("HTTP/1.1 206 Partial Content");
}
else
{
header("HTTP/1.1 200 OK");
}
header("Content-Disposition: attachment; filename=$fn");
header("Last-Modified: $ftime");
header("Accept-Ranges: bytes");
header("Content-Length: ".($fsize-$range));
header("Content-Range: bytes $range-".($fsize -1)."/".$fsize);
header("Content-type: application/octet-stream");
print $content;
malformed header from script. Bad header=HTTP/1.1 200 OK: php.exe
или
malformed header from script. Bad header=HTTP/1.1 206 Partial Content: php.exe
Не подскажете, как исправить?
Заранее спасибо.