简介

MKOnlineMusicPlayer 是由孟坤开发的一款开源的基于 Meting 的在线音乐播放器。具有音乐搜索、播放、下载、歌词同步显示、个人网易云音乐播放列表同步等功能。

演示

下载

  • Github下载

  • 直接下载

建站

这里推荐使用宝塔面板->网站->创建站点,接下来完成一系列创建网站流程即可(宝塔面板添加ssl证书很方便,推荐使用)

建站.png

上传网站文件

将上上一步下载的文件,下载下来,上传至网站根目录

文件.png

添加ssl证书、小绿锁

此时,网站就可以打开了,很简单,对吧。

宝塔面板申请ssl证书,等待约10分钟左右即可完成(可能我是晚上,时间比较久)

申请完成过后,可以勾选上强制https

本人强迫症,看着没有小绿锁很难受
  • 打开根目录的api.php文件
  • 先找到下面的代码,将第一行的false改成true
define('HTTPS', true);    // 如果您的网站启用了https,请将此项置为“true”,如果你的网站未启用 https,建议将此项设置为“false”
define('DEBUG', false);      // 是否开启调试模式,正常使用时请将此项置为“false”
define('CACHE_PATH', 'cache/');     // 文件缓存目录,请确保该目录存在且有读写权限。如无需缓存,可将此行注释掉
  • 再找到如下代码
use Metowolf\Meting;
//在这里添加
$API = new Meting('netease');
  • 在中间添加上
if(isset($_SERVER['REQUEST_SCHEME']) && $_SERVER['REQUEST_SCHEME'] == 'https') define('ISHTTPS', true);#检测HTTPS请求
  • 再向下找到如下代码
function echojson($data)    //json和jsonp通用
{
    header("Content-type: application/json");
    //在这里添加
    $callback = getParam('callback');
    if($callback != "") //输出jsonp格式
    {
  • 向其中添加
if(defined('ISHTTPS') && ISHTTPS === true) $data = str_replace('http:\/\/', 'https:\/\/', $data);#如果为https请求则替换http为https

写在后面

这个时候再打开网站,就会发现,美丽的小绿锁就出来了~

问题

播放器缓存问题
因为频繁请求网易云数据会被网易云拉黑,所以播放器已对网易云歌单(缓存有效期为一天)、歌词(缓存有效期为永久)加入了缓存。

请确保程序目录下的 cache 文件夹存在且可写。

注:程序不会主动删除缓存文件。请自行编写脚本或手动定期删除缓存文件,以免服务器被塞满……

如无需使用缓存,则手动将 api.php 的 define('CACHE_PATH', 'cache/'); 注释掉即可。

其他更多,请查看wiki

http请求在https中

问题原因:HTTPS页面里动态的引入HTTP资源,比如引入一个js文件,会被直接block掉的.在HTTPS页面里通过AJAX的方式请求HTTP资源,也会被直接block掉的。
解决方案:

<meta http-equiv="Content-Security-Policy" content="upgrade-insecure-requests">

可以在相应的页面的里加上这句代码,意思是自动将http的不安全请求升级为https

最后修改:2019 年 10 月 30 日 07 : 42 PM
可以请我喝瓶冰阔落~