有趣的是2天前,我为所有音乐写了一个php媒体库。我有一个类似的问题。我正在使用http://musicplayer.sourceforge.net/作为播放器。播放列表是通过php构建的。所有音乐请求都转到一个名为xfer.php?file = WHEREVER的脚本
$filename = base64_url_decode($_REQUEST['file']);
header("Cache-Control: public");
header('Content-disposition: attachment; filename='.basename($filename));
header("Content-Transfer-Encoding: binary");
header('Content-Length: '. filesize($filename));
readfile($filename);
function base64_url_decode($input) {
return base64_decode(strtr($input, '-_,', '+/='));
}
当您调用文件时,请使用类似以下内容的文件:
function base64_url_encode($input) {
return strtr(base64_encode($input), '+/=', '-_,');
}
http://us.php.net/manual/zh/function.base64-encode.php
如果您使用某些需要mp3文件或其他内容实际链接的JavaScript或Flash播放器(例如,JW播放器),则可以附加文本“&type = .mp3”,这样最终链接将变为:“ www。 example.com/xfer.php?file=34842ffjfjxfh&type=.mp3”。这样,它看起来像以mp3扩展名结尾而不会影响文件链接。