Headers used to download file php

28,169

Here is an example of headers used for that:
http://php.net/manual/en/function.readfile.php

    header('Content-Description: File Transfer');
    header('Content-Type: application/octet-stream');
    header('Content-Disposition: attachment; filename='.basename($file));
    header('Content-Transfer-Encoding: binary');
    header('Expires: 0');
    header('Cache-Control: must-revalidate');
    header('Pragma: public');
    header('Content-Length: ' . filesize($file));
Share:
28,169

Related videos on Youtube

jhodgson4
Author by

jhodgson4

Updated on July 05, 2022

Comments

  • jhodgson4
    jhodgson4 almost 2 years

    Possible Duplicate:
    php, file download

    I have files that are not in the web root that I need to make available for download. So I have a script that uses the below to download the file requested. The problem is, I everyfile downloaded is corrupt? The files are ok because if I use FTP to download, they open. Here are the headers passed:

    header($_SERVER["SERVER_PROTOCOL"] . " 200 OK");
            header("Cache-Control: public"); // needed for i.e.
            header("Content-Type: " . $download[0]['mime']);
            header("Content-Disposition: attachment; filename=" .$download_file);
            header("Content-Transfer-Encoding: Binary");
            header("Content-Length:".filesize($attachment_location));
    
            readfile($attachment_location);
    
  • jhodgson4
    jhodgson4 over 11 years
    Thank you, this works a treat, thought I needed to set mime type to content type