我有一个可播放的.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;
?>
答案 0 :(得分:0)
我没有评论的评论。请检查您的代码以查找其他文件,例如文本或图像。我认为您也必须在此处收到错误。
答案 1 :(得分:0)
下载文件不需要第一个header("Content-type: application/octet-stream");
。 Source
第二
使用
更改标题header('Content-type: video/mp4');
header('Content-type: video/mpeg');
这应该有效。