Php 视频和音频嵌入文件赢得';t流,但下载工作。(图像也有用)

Php 视频和音频嵌入文件赢得';t流,但下载工作。(图像也有用),php,Php,我在远程服务器上上传了示例文件,有三种类型的文件:图像、视频、音频 我通过本地页面上的cURL访问它们并强制下载 一个问题是图像可以工作,但嵌入的音频和视频文件不能工作。我使用嵌入代码进行测试,这样的嵌入框架就足够了 这是我的php文件test.php <?php function download($url) { set_time_limit(0); $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url);

我在远程服务器上上传了示例文件,有三种类型的文件:图像、视频、音频

我通过本地页面上的
cURL
访问它们并强制下载

一个问题是图像
可以工作,但嵌入的音频和视频文件不能工作。我使用嵌入代码进行测试,这样的嵌入框架就足够了

这是我的php文件test.php

<?php
function download($url)
{
    set_time_limit(0);
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
    $r = curl_exec($ch);
    curl_close($ch);
    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', time()) . ' GMT');
    header('Cache-Control: private', false);
    header('Content-Type: application/force-download');
    header('Content-Disposition: attachment; filename="' . basename($url) . '"');
    header('Content-Transfer-Encoding: binary');
    header('Content-Length: ' . strlen($r)); // provide file size
    header('Connection: close');
    echo $r;
    exit;
}

if (isset($_GET['image']))
{
    $file = 'https://googledrive.com/host/0B_3oJnpnNoF9UjlkVUwtWE5CY0U/city.jpg';
    download($file);
}

if (isset($_GET['music']))
{
    $file = 'https://googledrive.com/host/0B_3oJnpnNoF9UjlkVUwtWE5CY0U/horse.mp3';
    download($file);
}

if (isset($_GET['video']))
{
    $file = 'https://googledrive.com/host/0B_3oJnpnNoF9UjlkVUwtWE5CY0U/mov_bbb.mp4';
    download($file);
}

?>

<img src="http://localhost/test.php?image" />

<br />

<audio controls height="100" width="100">
    <source src="http://localhost/test.php?music" type="audio/mpeg">
    <embed height="50" width="100" src="http://localhost/test.php?music">
</audio> 

<br />

<video width="320" height="240" controls>
   <source src="http://localhost/test.php?video" type="video/mp4">
   <object data="http://localhost/test.php?video" width="320" height="240">
   </object> 
</video>

可能是因为您为文件设置了错误的标题?您正在强制他们下载,而您想显示他们…

您是否尝试将标题更改为适合音乐和视频的标题?i、 e
标题内容类型音频