使用PHP从Web下载后,MP4无法播放

时间:2016-09-07 05:15:16

标签: php

我有一个可播放的.mp4文件,我使用此代码使用PHP下载文件。

Web浏览器下载文件正常,但下载后无法播放mp4文件。

代码有问题吗?

<?php
// place this code inside a php file and call it f.e. "download.php"
$path = $_SERVER['DOCUMENT_ROOT'] . "/video/";
$fullPath = $path."test_video.mp4";

if ($fd = fopen ($fullPath, "r")) {
    $fsize = filesize($fullPath);
    $path_parts = pathinfo($fullPath);
    header("Content-type: application/octet-stream");
    header("Content-Disposition: filename=\"".$path_parts["basename"]."\"");
    header("Content-length: $fsize");
    header("Cache-control: private"); //use this to open files directly
    while(!feof($fd)) {
        $buffer = fread($fd, 2048);
        echo $buffer;
    }
}
fclose ($fd);
exit;
?>

2 个答案:

答案 0 :(得分:0)

我没有评论的评论。请检查您的代码以查找其他文件,例如文本或图像。我认为您也必须在此处收到错误。

答案 1 :(得分:0)

下载文件不需要第一个header("Content-type: application/octet-stream");Source

第二

使用

更改标题
header('Content-type: video/mp4');
header('Content-type: video/mpeg');

这应该有效。