首页 文章

是否可以轻松下载在mp3播放器上播放的mp3?

提问于
浏览
0

我在我的网站上设置了MP3播放器来播放mp3 . 目前,用户可以轻松查看源代码,搜索“mp3”并下载我网站上的所有音乐 . 我知道完全阻止确定的用户下载音乐几乎是不可能的,但我想让普通用户更难 . 有什么办法可以混淆mp3的链接吗?

相关网站:http://boyceavenue.com/music

1 回答

  • 0

    您没有指定您使用的语言 . 为了扩展Marc B写的内容,我建议使用PHP http_send_file命令以及文件的校验和 .

    要发送文件,请使用以下命令:

    $filename = "/absolute/or/relative/path/to/file.ext";
    $mime_type = "audio/mpeg"; // See note below
    http_send_content_disposition($filename, true);
    http_send_content_type($mime_type);
    http_throttle(0.1, 2048);
    http_send_file($filename);
    

    如果使用PHP 5.3.0或更高版本提供多种类型的文件,则可以通过以下方式确定mimetype:

    $filename = "/absolute/or/relative/path/to/file.ext";
    $finfo = finfo_open(FILEINFO_MIME_TYPE); 
    $mime_type = finfo_file($finfo, $filename);
    finfo_close($finfo);
    

    计算校验和很简单 . 只需使用md5_file .

    那么,你可以用校验和做什么?

    好吧,你可以创建一个互相交叉引用的校验和和文件名数组 . 也就是说,您在文件的链接中包含校验和,但是有一个查找校验和并传递mp3文件的例程 . 您也可以在数据库中执行此操作 . 你也可以像一些应用程序那样根据校验和将文件存储在目录结构中( music/3/3a/song.mp3 ,校验和为3a62f6或其他) .

    如果您不关心文件名被破坏,可以使用文件名的校验和保存文件 . 这可以在上传时间(如果您的文件正在上传)或通过批处理脚本(使用CLI)完成 .

    您应该做的另一件事是放置一个默认文档(index.php或其他),告诉人们在其他地方查找 . 同时禁用浏览目录 . 如果只有极少数人需要访问权限,您也可以在目录上输入密码,因此需要登录才能访问这些文件 .

相关问题