如何在Safari中保存/下载MP4(而不是在快速时间专业播放器中播放文件)

时间:2012-05-22 11:43:50

标签: php macos

我在上传文件夹中上传了一个带有php的.mp4文件。现在我用下载链接下载它。它是在safari浏览器中的Windows系统上正确下载的。但在mac系统上,视频文件正在播放quicktime pro播放器。虽然我只是想下载它。 但它默认播放。这是仅在safari浏览器上的问题。有没有办法改变这个。因此默认情况下它不会与quicktime pro播放器一起播放。

2 个答案:

答案 0 :(得分:1)

那可能是 因为你只是链接到文件所以如果用户的计算机有软件来处理它,它会选择默认运行它(假设用户的计算机设置为方式)。

如果使用正确的标题,可以强制浏览器显示下载对话框提示:

 header("Cache-Control: public");
 header("Content-Description: File Transfer");
 header("Content-Disposition: attachment; filename=$file");
 header("Content-Type: video/mpeg");
 header("Content-Transfer-Encoding: binary");

答案 1 :(得分:0)

请使用以下代码

    if (file_exists($file)) {
        header('Pragma: public');   // required
        header('Expires: 0');    // no cache
        header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
        header('Last-Modified: '.gmdate ('D, d M Y H:i:s', filemtime ($file)).' GMT');
        header('Cache-Control: private',false);
        header('Content-Type: octet/stream');
        header('Content-Disposition: attachment; filename="'.basename($file).'"');
        header('Content-Transfer-Encoding: binary');
        header('Content-Length: '.filesize($file));  // provide file size
        header('Connection: close');
        readfile($file);    // push it out
        exit();
    }