我有一个mp3文件的文件列表:
http://server.com/7fb77afc17f7.mp3
http://server.com/9fc048752087.mp3
http://server.com/2k4487f62227.mp3
每次打开我都需要:
http://server.com/music.mp3
它播放了我随机的文件。做这个的最好方式是什么?
我在思考nginx重写,也许是在php的帮助下。
这样的东西会起作用吗?
location / {
rewrite 2k4487f62227.mp3 /music.mp3 break;
rewrite 9fc048752087.mp3 /music.mp3 break;
}
答案 0 :(得分:0)
如果您不需要配置在nginx中,则可以创建仅限php的解决方案:
1 - 列出文件夹
中的mp3文件如果有人正在寻找这个答案的评论中提到的复制粘贴/轻松解决方案,这里是第一部分的示例(减去扩展的过滤器):
static function getFiles($dir, $includeFolders = true) {
if (substr($dir, -1) != "/") $dir = "{$dir}/";
$files = array();
if ($handle = opendir($dir)) {
while (false !== ($file = readdir($handle))) {
if (($file != ".") && ($file != "..") && ($includeFolders || !is_dir($dir.$file))) {
$files[] = $file;
}
}
closedir($handle);
}
return $files;
}
2 - 使用array_rand返回其中一个文件
3 - 播放文件