Pobieranie plików jako nieprawidłowe pliki załączników

Próbuję wymusić link do pobrania pliku jako załącznika. To są rzeczy, które zrobiłem wcześniej, ale coś idzie nie tak i nie jestem pewien, co to jest. Typy plików, które próbuję wysłać jako załączniki, to wszystkie pliki mp4. Oto co robię:

<?php
if(isset($_GET['file']))
{
    $file_path = dirname(__FILE__) . "/videos/$_GET[file]";
    if(file_exists($file_path))
    {

        $file_url = "/videos/$_GET[file]";
        header ("Content-type: video/mp4");
        header("Content-Transfer-Encoding: binary"); 
        header("Content-disposition: attachment; filename=\"".basename($_GET['file']) ."\""); 
        header("Content-Length: ".filesize($file_path));
        echo readfile($file_url);
    }
}
?>

Jak widać, sprawdzam, czy plik istnieje, zanim spróbuję go obsłużyć. Co się dzieje, gdy dostaję plik, jego typ jest poprawny (MP4 Video), ale plik ma rozmiar około 100 bitów. Podczas debugowania sprawdzałem, czy rozmiar pliku jest poprawny. Zmieniłemreadfile() linia do:header("location:/videos/$_GET[file]");

i zabiera mnie do wideo. Zrobiłem całkiem sporo Googlingu i nie wymyśliłem powodu takiego zachowania. Czy ktoś wcześniej widział tego typu rzeczy? Jakieś pomysły na to, co może to powodować? Każda pomoc byłaby bardzo mile widziana, dzięki bardzo!

questionAnswers(2)

yourAnswerToTheQuestion