我有以下代码
header("Content-Description: File Transfer");
header('Content-Type: audio/mp3');
header("Content-Disposition: attachment; filename=" . $arrResults['audioLink'] . ".mp3");
header('Expires: 0');
header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
header('Pragma: public');
header("Content-Transfer-Encoding: binary");
$strLink = 'http://ag-org.s3.amazonaws.com/members/tele_classes/' . $arrResults['audioLink'];
ob_clean();
flush();
readfile($strLink);
但是,当单击下载链接执行此代码时,它始终返回0字节文件。桶中的所有文件都设置为public。
我在这里做错了什么?
答案 0 :(得分:0)
.mp3
扩展名是否真的不属于文件名,因为它存储在S3上?
您将.mp3
附加到Content-Disposition标头中的文件名,但不是您传递给readfile
的网址。