疫情概要
1月23日0—24时,31个省(自治区、直辖市)和新疆生产建设兵团报告新增确诊病例80例,其中境外输入病例15例(广东5例,上海3例,山西2例,天津1例,辽宁1例,江苏1例,陕西1例,甘肃1例),本土病例65例(黑龙江29例,河北19例,吉林12例,上海3例,北京2例);无新增死亡病例;新增疑似病例1例,为境外输入病例(在上海)。
春节将至,疫情反复,大家注意日常防疫,减少不必要外出,外出佩戴口罩。预祝大家过个愉快的春节!
前言
如今因为音乐版权的问题,各大音乐播放平台之间竞争激烈,各家都推出了自己的音乐加密方式,导致付费音乐下载后不能用其他的音乐播放器播放,并且过了会员期后下载的文件在自家的播放器上也是不能播放的(需单曲购买后才支持解锁,支持其他播放器播放)。
车上U盘内的歌曲呢已经快1年没有更新了,趁着现在有QQ音乐会员打算更新一波曲目(感谢京东218会员赠送的1年QQ音乐绿钻豪华会员,鄙人裤腰带都快勒断了是不可能专门买的啦)。结果通过客户端下载下来的文件有部分是被加密过的,仅有少数歌曲是不加密的。这我明显是不能答应的啊。
经过不懈的努力后,终于找到一个开源的解码神奇啊。
本篇主要讲述亮点:
- Unlock Music的使用
- 站点部署流程整理(太久没弄了,忘了,借这次机会操作一遍)
部署后的地址:
设备
- Mac pro
- 阿里云服务器(Centos7+Nginx)
Mac版QQ音乐下载路径
- 加密歌曲是放在:
/Users/当前登录用户名/Library/Containers/com.tencent.QQMusicMac/Data/Library/Application\ Support/QQMusicMac/iQmc/
也可通过 下载歌曲
-> 已下载
-> 在下载的歌曲上右键
-> 点击 查看本地文件
直接跳转到该目录下。
- 未加密文件是放在:
/Users/当前登录用户名/Music/QQ音乐
也可通过定位到加密文件的方式直接打开这个目录。
Unlock Music 音乐解锁
本小节直接从开源项目内的说明文档内抄录而来
若Github下载慢,可点击下方链接下载,从Github下载而来,未做修改。
版本:1.7.2
legacy版本
:
modern版本
:
legacy版本
和modern版本
为已构建的版本,构建版本和源码的使用可以查看章节 使用方法
功能介绍
- 在浏览器中解锁加密的音乐文件。 Unlock encrypted music file in the browser.
- unlock-music项目是以学习和技术研究的初衷创建的,修改、再分发时请遵循License
- Unlock Music的CLI版本正在开发中。
- 我们新建了Telegram群组,欢迎加入!https://t.me/unlock_music_chat
- CLI版本 Alpha 大批量转换建议使用CLI版本
- 相关的其他项目
特性
支持的格式
QQ音乐 (.qmc0/.qmc2/.qmc3/.qmcflac/.qmcogg/.tkm) 。
其中.qmc0:标准;.qmc3:HQ高品质;.qmcflac:SQ高品质- 写入封面图片
Moo音乐格式 (.bkcmp3/.bkcflac)
QQ音乐Tm格式 (.tm0/.tm2/.tm3/.tm6)
QQ音乐新格式 (实验性支持)
- .mflac
网易云音乐格式 (.ncm)
- 补全ncm的ID3/FlacMeta信息
虾米音乐格式 (.xm) (测试阶段)
酷我音乐格式 (.kwm) (测试阶段)
酷狗音乐格式 (.kgm) (CLI版本)
其他特性
- 在浏览器中解锁
- 拖放文件
- 在线播放
- 批量解锁
- 渐进式Web应用
- 多线程
使用方法
使用已构建版本
从GitHub Release下载已构建的版本
- 本地使用请下载
legacy版本
(modern版本
只能通过http/https协议访问)
- 本地使用请下载
解压缩后即可部署或本地使用(请勿直接运行源代码)
自行构建
- 环境要求
- nodejs
- npm
- 获取项目源代码后执行
npm install
安装相关依赖 - 执行
npm run build
即可进行构建,构建输出为 dist 目录
npm run serve
可用于开发
部署新站点
小编这边将解码的站点配置为二级域名:unlock.nhtzj.com
设备
- Mac pro
- 阿里云服务器(Centos7+Nginx)
添加二级域名解析
在阿里云域名解析网站添加二级解析域名:unlock.nhtzj.com
添加站点文件
下载modern版本
解压
将文件夹名称
modern
改为unlock
,并对内部文件进行了微调将
unlock
文件夹上传到服务器根目录/var/www
下 ,上传使用scp命令:1
scp -r 本地文件夹路径 服务器登录用户名@服务器IP地址:/var/www
其中
-r
用于上传/下载文件夹。如果本地路径和服务器路径交换下,就是从服务器下载
1
scp -r 服务器登录用户名@服务器IP地址:/var/www/unlock 本地文件夹路径
授予权限
现在我们已经添加的文件,但这些目录结构都为 root 用户所有。如果希望服务器上的普通用户也能够修改 web 目录下的文件,我们可以使用 chown 命令转移目录的所有者:
1 | sudo chown –R $USER:$USER /var/www/ |
当你提交上述 chown 命令时,$USER 变量将会取值为当前登录服务器的用户。这样,我们的普通用户就取得了 www 子目录的所有权。
此外,我们还需要对这里的目录权限做一点修改,确保对一般的 web 目录及其内部的子目录和文件的读取都是被允许的,这样,网页才能正常地为访问者提供服务:
1 | sudo chmod –R 755 /var/www |
现在你的服务器应该已经取得了为向 web 站点访问者提供内容所需的权限,并且服务器上的用户现在应该能够在恰当的文件夹下创建内容
添加新站点配置文件
nginx的配置路径是在:/etc/nginx/
进入后,目录如下:
1 | # cd /etc/nginx/ |
其中目录conf.d
就是添加新站点配置的地方。
而nginx.conf
为nginx的总配置文件,文件打开后可以看到如下,将conf.d
目录下所有conf
格式的文件都加载进来
1 | include /etc/nginx/conf.d/*.conf; |
所以在conf.d
内创建文件 unlock.conf
1 | server { |
重启nginx
1 | systemctl restart nginx |
现在可以在浏览器输入自己的域名查看效果了
添加ssl证书
给新加的二级域名添加ssl证书。
由于小编之前已经创建过证书了所以这里就是给证书添加新域名的操作
由于新增时需要将证书内原有的域名信息也要加上,所以
查询原有证书信息
1
certbot certificates
将查询到的Domains信息取出,并用逗号分隔
1
sudo certbot --expand -d blog.nhtzj.com,www.nhtzj.com,unlock.nhtzj.com
具体示例可查看文章 Centos7使用certbot获取ssl证书#常用命令
现在可以在浏览器输入自己的域名查看效果了