以与使用php提供图像的方式相同的方式,在CAPTACHAS等中使用,是否可以对音频文件执行相同的操作?
我试过这个
<?php
$track = "sometrack.mp3";
if(file_exists($track)) {
header('Content-type: audio/mpeg');
header('Content-length: ' . filesize($track));
header('Content-Disposition: filename="sometrack.mp3"');
header('X-Pad: avoid browser bug');
header('Cache-Control: no-cache');
print file_get_contents($track);
} else {
echo "no file";
}
我正在使用Safari,它可以播放MP3文件。它正在将Safari推入正确的模式,我将Quicktime控件启动几秒钟,然后“无视频”。
我正在尝试保护文件免受未经授权的下载,以防您想知道我为什么要这样做。
答案 0 :(得分:14)
您的内容处理应该是:
header('Content-Disposition: attachment; filename="sometrack.mp3"');
不确定这是不是问题。我还建议使用readfile
输出文件:
readfile($rSong);
此外,使用详尽的Content-Type标头并设置Content-Transfer-Encoding也不会有害:
header("Content-Transfer-Encoding: binary");
header("Content-Type: audio/mpeg, audio/x-mpeg, audio/x-mpeg-3, audio/mpeg3");
答案 1 :(得分:1)
尝试使用This Class它支持下载简历和速度限制相信我你需要它作为mp3下载网站的拥有者