Всем привет! Столкнулся вот с такой странностью. Для начала код: PHP: $vod_id = intval($_REQUEST["vod_id"]); // $vod_file - берём имя файла из бд $fpath=$_SERVER['DOCUMENT_ROOT']."/vods/{$vod_file}"; $file = $vod_file; $filesize = filesize($fpath); header("Content-type: video/x-ms-wmv"); header("Accept-Ranges: bytes"); header("Content-Length: ".$filesize); header("Content-Disposition: attachment; filename=".$file); $fdl = fopen($fpath, "r"); fpassthru($fdl); fclose($fdl); header ("Connection: close"); В скаченном таким образом файле (в данном случае видео) обрезается последний байт, а первым вставляется перенос строки (0x0A). Размер файла соответственно не меняется. Файлы при этом не читаются. Прикол в том, что если файл закачивать на сервер через php и при этом сразу вносить размер файла в бд, а $filesize при скачивании брать от туда, то файл скачивается нормально без измененний, хотя и в первом (filesize($fpath)) и во втором (предварительно занесённый в бд) случаях значение размера одно и тоже. Если вообще убрать $filesize - файлы скачиваются и даже читаются, но вот размер у них получается совершенно не адекватный Файлы на сервере проверяли, на прямую скачиваются нормально. До этого был другой, более сложный скрипт, проблема была та же.[/php]
Проверь свои скрипты, нет ли где лишнего вывода за пределами тегов <?php...?> (того же переноса строки).