解决Piwik统计图表乱码问题

一.原因

讲真的这问题好久了,一直懒得去管,今天也是突然想起来,就顺手解决一下。其实吧,这个 问题 只有在你启用Piwik的邮件报表功能或者使用它的手机APP的情况下才会暴露出来,单纯的网页版其实没啥大碍,这也是我一直懒得解决的原因。原因其实很简单,和WHMCS那个啥PDF中文乱码其实是一个毛病,简单的说就是缺字体,毕竟中文也是比较特殊……自带的字体无法显示(这个问题还会出现在日语、希伯来语等需要用到unicode来显示的语言身上)

二.解决

官方有解决方案,所以还是挺简单——>传送门

我这边搬运一下,直接总结成命令得了……

然后你过阵子等生成新的图表就能看到字体不再是框框了

PS.官方提示,如果你想用这个字体作为所有语言的字体的话请用unifont.ttf覆盖自带的tahoma.ttf

 

解决Linux/macOS下zip文件解压中文乱码

一.原因

很多网站下载的zip文件都是在Windows下打包的,这就为乱码的出现埋下了铺垫。这个问题表面上是由于Windows(中文系统)下使用cp936也就是GBK编码,而Linux以及macOS下使用UTF-8编码,但是追根究底还是因为zip格式在设计之初就没有为文件编码预留存储数据的位置,导致解压程序在解压时只能依照系统编码进行解压,这种情况下一旦跨平台解压就可能导致中文乱码。

二.解决

以下方法来自知乎——>传送门

①.unzip修改版

首先建议尝试unzip是不是自带转码的版本,这个版本在CentOS上直接yum install unzip貌似就是了,部分系统中是unzip-iconv,还请自行尝试

如果支持就直接解压出来了,不支持就会跳参数出来

②.unar(并不是unrar, 请看好)

这个在macOS上用brew能装,CentOS7用yum,不过6貌似就没有现成的了

③bsdtar(arch下是libarchive)

CentOS下可能为bsdtar3,我测试6是这样的,7没试,可以yum search bsdtar看看

④.p7zip+convmv

⑤.python

原贴有人提到这个方案有风险,见仁见智吧

保存为unzip.py然后chmod+x unzip.py执行./unzip.py test.zip

解决Aria2 BT下载速度慢没速度的问题

一.前言

虽然迅雷被喷的很惨,但是对于部分没速度的种子来说它的各种离线加速会员加速全网加速啥的还是挺好的(但是这萨比最近快啥都不能加速了),那么问题来了,Aria2由于没有加速服务器,有些种子一直没几个人上传导致只有几KB的速度甚至完全没速度,这种情况下该怎么办呢?

二.搞事

办法还是有的,这儿介绍两种

①.借鸡生蛋

既然Aria2没有离线,那我给它加个不就行了吗,迅雷的离线空间(虽然很多可能提示违规)、百度云的离线(虽然不少8秒),但也不是不能用吗,土豪可以上115,强无敌,然后通过各种插件脚本将完成的任务通过Aria2下载,成功实现借鸡生蛋。不过除非是百度云还没开会员,不然这样感觉有种脱裤子放屁的感觉……

相关插件可以参考这文章——>传送门

②.众人拾柴

所谓BT其实实际上并不是一个人的事,因为你的下载必然代表着一个甚至一堆人在上传。所以,如果下载慢,那么找更多上传的人不就行了?那么问题来了,如何知道有谁能给你上传?这就涉及到Tracker、本地用户发现、DHT、用户交换这些功能了。

Tracker会存储你的信息(包括正在下载或者上传的是什么种子,你的速度还有进度),同时会将其他正在下载或者上传这个种子的用户数据给你,从而你能够根据这些信息连接对应的用户

DHT也是类似,只是它不像Tracker这样是一个个的,而是一整个网络,你可以通过接入DHT网络从而分享以及获得数据

本地用户发现不是很懂,感觉上应该是扫描局域网开放端口或者获取其他BT客户端在网内广播数据(?)从而发现其他用户

用户交换则是和你连接的用户交换所获得的其他用户的信息

在这四个中,DHT很大程度上比较不可控,因为我们不好修改程序(但是!DHT这玩意有缓存,下面会提到),而本地用户发现比较看你服务器,在某些BT扎堆的机房和地区感觉应该会比较有效,至于用户交换则是需要连接其他用户作为前提。所以我们最好下手的就是Tracker,要知道全世界一大堆Tracker服务器,如果我们连接的Tracker多了,那么就有更大的机会碰到和我们下载同一个种子的用户,这样速度不就会变快?

基于这个想法,我们需要给Aria2添加Tracker,而不是只根据从DHT网络或者种子文件中存储的Tracker信息,让下载赢在起跑线上

这儿推荐一个自动更新的Tracker列表——>传送门

这里面分了好几种,有http和udp的,也有纯ip和域名的,还有选出来的前20的Tracker(基于延迟以及热门度)

我建议添加前20的就OK了

修改Aria2配置文件

我这个只是今天的列表,所以……用的时候建议自己换一下最新的

另外,在抗DMCA的服务器上请把如下选项打开

上面提到DHT有缓存,是这样滴,和很多BT客户端一样,Aria2有个dht.dat文件(开启ipv6还有个dht6.dat),这玩意用于存储一种叫做DHT Routing Table的东西,DHT网络由无数节点组成,你接触到一个后能通过它接触到更多的节点,Aria2我记得是有内置的节点,但是!如果你在Aria2第一次运行的时候直接下载磁力链接或者冷门种子,你很可能遇到连MetaData都无法获取的情况,这就是因为第一次只是初始化dht.dat文件,你本地不存在DHT Routing Table的缓存,所以你无法从DHT网络中获取足够的数据。

那么怎么办?我的建议是,找个热门种子(千万建议是种子,而不是磁力链接),然后下一波,挂着做种,过几个小时后退出Aria2,或者等Aria2会话自动保存,你会发现dht.dat从空文件变成有数据了,这时候你下载就会正常很多。

Aria2配置文件参数翻译详解

一.介绍

Aria2是啥就不用我介绍了,目前最新版本已经到了1.33,配置参数那是相当滴多,偶然发现AriaNG的语言文件里有绝大部分参数的中文解释,所以拿出来重新排版下方便查看。

二.配置文件

请注意,原翻译来自AriaNG语言文件——>传送门

默认配置内容来自Aria2 1.33.0文档——>传送门

请配合官方文档食用,文档中还含有部分仅可用于命令行参数的内容,本配置文件中未包含该部分

阅读全文→

下载工具系列——Peerflix-Server (支持边下边播看的云端BT客户端)

一.介绍

这个和之前的CloudTorrent比较像,但是这个是用Node.js写的,作者表示思路来自于Peerflix,这个名字是不是和Netflix有点像?是滴,这货是个比较神奇的玩意,和往常的bt客户端不同,它不偏重于下载,甚至它就是不是让你用来下载的,它在你的播放器或者浏览器与BT种子之间架起一座桥梁,使得你能够通过任意浏览器或者支持网络文件的播放器播放你BT种子种的内容。是不是感觉很像当年的迅雷云播?Yep,就是这样。

Peerflix-Server从Peerflix获取了灵感,将其改为带Web界面的程序并且"增加"了"没有用"的下载功能,这样,你就能够在服务器上任意预览你想要的BT种子或者磁力链接,然后挑选你想要的看完或者下载下来。一定意义上你可以避免葫芦娃以及80G新闻联播(233

二.安装

Node.js的程序嘛...我们肯定是要先装Node.js的,这儿选择用nvm安装,贼方便,之前我也介绍过,这儿直接给命令,感兴趣的可以看我之前文章——>传送门

阅读全文→