2017-09
5

可视化aria2+Flashgot部署教程

By xrspook @ 13:03:58 归类于:烂日记

昨天aria2的RPC在单位的电脑上不成功,我怀疑是网友用go编译出来的aria2rpc在Win7 64位系统里有问题,导致数据传输不过去。aria2rpc在网络上只有2个惯用版本,一个是go另外一个是py,所以我就只好真的很认真地在电脑里装一个Python27。但即便Python27上去了,设置也完全正确了,Flashgot参数模板里的东西我也和aria2rpc代码里的一一对应了,为什么还是不行呢?!aria2c.exe可运行,但就是不能够把RPC数据传过去。最后我留意到教程里多次提到RPC-secret这个参数,说如果启用了token以后,secret也要换成token的东西。在家里用webui-aria2的时候RPC数据可以连上,但总有一句黄色的话“通过 RPC 连接到 Aria2 成功,但是连接并不安全。要想使用安全连接,尝试在启动 Aria2 时添加一个授权密码令牌(通过 –RPC-secret 参数)”,所以我在aria2.conf里设置了一串数字,同时在webui-aria2的“设置-连接设置-密码令牌”里也填上了那堆东西。这般操作一直相安无事。每次打开webui-aria2虽然上一次按了保存,但下一次重启浏览器以后之前保存的东西还是恢复原位,所以实际上那个密码令牌还是没有保存。所有让RPC能正常传输的操作我都试过,不如撤掉这个RPC-secret试试。接着,接着,接着,世界被拯救了!!!!!网友用go编译的aria2rpc.exe成功了,各种配置的py也都全部可以!Flashgot调用我设定的aria2下载工具,webui-aria2总算有反应了,谢天谢地!!!不知道这个“RPC-secret”是不是症结所在,反正搞定这个后我解脱了。

有必要把aria2的整个配置流程都记录一下。以下内容各种摘抄~

**********可视化aria2+Flashgot部署教程开始**********

1、去官方网站下载aria2。这是最原始的东西,必须得先部署。按照系统的不同各取所需下载。下载解压后,除了里面的aria2c.exe以外对普通人来说都是天书,摊手。即便有个exe文件,双击打开也是闪退的,所以对不想折腾或完全不懂的人来说,下载回来的东西纯粹是一堆废物。aria2不需要安装,解压就能使用,但不要把它放在文件名有空格或文件名过长的目录内,否则后面某步骤你就呵呵进行不下去了。

2、从官网下载回来的aria2文件夹必须通过配置才能使用,当然这是对普通人而言的,对大神来说人家命令行就能解决一切。所以呢,需要在文件夹里手动增加几个文件(右键-新建文件夹-重命名[把下面的短语逐个粘帖进去,回车确定]):

Aria2.log(日志)
aria2.session(下载历史)
aria2.conf(配置文件,非常重要!!!)
aria2.vbs(隐藏cmd窗口运行用到的)

3、重头戏,配置aria2!控制aria2需要参数,你可以用命令行在使用的时候一个个敲,对于小白来说设置好配置文件就可以拯救世界,这就是第2步提到的aria2.conf配置文件。(官方版本里不含这个,显然人家就不是给小白们消遣准备的)如何配置aria2?你可以直接下载别人的已经配置好的文件替换掉你的aria2.conf,也可以用记事本打开你的aria2.conf把下面一大堆东西复制粘贴进去,反正这堆我也是抄回来的。

#rpc-secret=123456789
#用户名
#rpc-user=user
#密码
#rpc-passwd=passwd
#设置加密的密钥
#rpc-secret=adgjl
#允许rpc
enable-rpc=true
#允许所有来源, web界面跨域权限需要
rpc-allow-origin-all=true
#是否启用https加密,启用之后要设置公钥,私钥的文件路径
#rpc-secure=true
#启用加密设置公钥
#rpc-certificate=/home/name/.config/aria2/example.crt
#启用加密设置私钥
#rpc-private-key=/home/name/.config/aria2/example.key
#允许外部访问,false的话只监听本地端口
rpc-listen-all=true
#RPC端口, 仅当默认端口被占用时修改
#rpc-listen-port=6800
#最大同时下载数(任务数), 路由建议值: 3
max-concurrent-downloads=5
#断点续传
continue=true
#同服务器连接数
max-connection-per-server=5
#最小文件分片大小, 下载线程数上限取决于能分出多少片, 对于小文件重要
min-split-size=10M
#单文件最大线程数, 路由建议值: 5
split=10
#下载速度限制
max-overall-download-limit=0
#单文件速度限制
max-download-limit=0
#上传速度限制
max-overall-upload-limit=0
#单文件速度限制
max-upload-limit=0
#断开速度过慢的连接
#lowest-speed-limit=0
#验证用,需要1.16.1之后的release版本
#referer=*
#文件保存路径, 默认为当前启动位置
dir=D:\tddownload
log=D:\Aria2c\Aria2.log
#文件缓存, 使用内置的文件缓存, 如果你不相信Linux内核文件缓存和磁盘内置缓存时使用, 需要1.16及以上版本
#disk-cache=0
#另一种Linux文件缓存方式, 使用前确保您使用的内核支持此选项, 需要1.15及以上版本(?)
#enable-mmap=true
#文件预分配, 能有效降低文件碎片, 提高磁盘性能. 缺点是预分配时间较长
#所需时间 none < falloc ? trunc << prealloc, falloc和trunc需要文件系统和内核支持 file-allocation=falloc #不进行证书校验 check-certificate=false ## 进度保存相关 ## # 从会话文件中读取下载任务 input-file=D:\Aria2c\aria2.session # 在Aria2退出时保存`错误/未完成`的下载任务到会话文件 save-session=D:\Aria2c\aria2.session # 定时保存会话, 0为退出时才保存, 需1.16.1以上版本, 默认:0 #save-session-interval=60

注意:“dir=D:\tddownload ”、“log=D:\Aria2c\Aria2.log”、“input-file=D:\Aria2c\aria2.session”、“save-session=D:\Aria2c\aria2.session”这四条路径请根据实际情况调整。

4、没有配置好的aria2开不了,现在双击aria2c.exe文件也照样无法让aria2c.exe运行,依旧闪退,依旧任务管理器里未见这个程序。接下来我们需要配置第2步提到的aria2.vbs。对aria2来说,这个就是芝麻开门。用记事本打开aria2.vbs,然后在里面输入:

CreateObject(“WScript.Shell”).Run “D:\App\Aria2\aria2c.exe –conf-path=aria2.conf”,0

其中“D:\App\Aria2\aria2c.exe”是aria2c.exe的绝对路径(aria2c.exe文件-右键-属性-安全-对象名称,我就知道小白不知道这个怎么找!)。自行新建的aria2.conf必须和aria2c.exe,“–conf-path=aria2.conf”才是这么写,否则等号后面依然要写绝对路径。在第1步里我曾经提到不要把aria2解压的文件夹放在含有空格或文件名过长的文件夹里。如果你真那么做,理论上这个aria2.vbs配置好以后双击就能运行aria2c.exe,但实际上你就会遇到弹出窗口说“错误:系统找不到指定文件夹。代码:80070002”。通常这些人都是把aria2文件夹放到了“Program Files”,这个文件名有空格,而他们的绝对路径又写成了“D:\Program Files\aria2\aria2c.exe”之类,所以就呵呵呵鸟。其实这也是有解决办法的,就是把路径换成“D:\Progra~1\aria2\aria2c.exe”,但与其这样,不如直接不放在有空格的根目录不更好?把这个文件复制到你的系统启动文件夹(开始-所有程序-启动文件夹-打开),然后每次开机aria2就自动运行了,省心。

5、完成前面4步,双击aria2.vbs,你应该就能在系统的任务管理器里看到aria2c.exe了,恭喜你,aria2部署成功!!!

6、但到第5步为止虽然你已经可以运行aria2了,但你仍只能通过命令行下载,非常不人性化。所以我们需要一个可视化的界面拯救世界。推荐下载webui-aria2。这个东西下载回来,解压就能使用。放在任何一个文件夹都不成问题,你甚至可以忘记它的存在,因为你只需要在你常用的浏览器里打开文件夹里的index.html,并把那个地址添加为书签,往后你就永远都不需要知道这个文件夹具体放在神马地方了。

7、前5步已经完成,aria2已经部署成功,用随便一个浏览器打开webui-aria2的index.html你就应该能马上看到正常界面,左上方的上传下载图标显示速度均为“0 B/s”。但同时,你会看到右上方有黄色的弹出窗口“通过 RPC 连接到 Aria2 成功,但是连接并不安全。要想使用安全连接,尝试在启动 Aria2 时添加一个授权密码令牌(通过 –rpc-secret 参数)”,这句话我个人觉得对小白来说你不需要管它。之前我正是因为管了而出现问题。反正aria2已经连接RPC成功,余下安全不安全对单机用户来说应该影响不大。所以呢,在这里我就不继续讲该怎么让这句黄色的话消失了。到此为止,你已经完成了aria2部署以及在可视化界面操控aria2。通过webui-aria2,你已经可以在添加那里加入链接完成文件下载。如果没有这个可视化的webui-aria2界面,你得在命令行操控一切,想想都觉得疯狂。

8、第7步完成以后,你可以在webui-aria2添加下载,但显然我们平时下载都不这样,太逆天麻烦了,所以我们要把aria2关联到我们平时的下载管理器里。我常用的浏览器是Firefox,对应的经典下载管理器是Flashgot。这个完成以后我们就能在下载弹出框里直接选择我们的目标下载工具,下载项目能在webui-aria2里看到,操作跟平时我们用流氓雷一样。Flashgot是Firefox的插件,我们当然要先安装:管理(右边三横杠)-附加组件-搜索“Flashgot”-安装。重启Firefox,管理-附加组件-扩展,在这里我们已经能看到Flashgot了。

9、要把数据从Flashgot传递到webui-aria2我们需要一个RPC的脚本。网上的经典版本是aria2rpc,里面提供了py和go的脚本,但对普通人来说这又是天书。py要求必须系统有Python运行环境才能继续下去,于是本来打算超轻量级弄个下载神器又不得不先安装Python系统,步骤简单,但个人觉得有点不划算,所以这里我不展开讨论了,有兴趣请自行学习。正是因为py麻烦,所以网上有大神直接把go的脚本给编译成了exe,于是,我们这些小白终于被拯救了!!!在这一步,我们需要把大神用go编译好的aria2rpc.exe下载回来,放到aria2的文件夹,备用。

10、在这一步我们将在Flashgot完成脚本设置,最终把Flashgot和webui-aria2关联上。Flashgot-选项-新增-设定个名字(比如Aria2rpc)确定。可执行路径选择第9步下载回来的aria2rpc.exe,参数模板填写“[-cookie COOKIE] [-out FNAME] [URL]”,请把引号的东西复制进去,因为每个参数(中括号)之间是有空格的,空格木有就木有然后了,最后点击确定。如果一切顺利,点击可以弹出的下载链接以后在Flashgot选择你新增的下载管理器接着确定,你就能在webui-aria2看到任务开始跑了!

11、这一步可有可无,但设置了有备无患。用go编译出aria2rpc.exe的大神已经预见网友在下载的时候会用到“科学上网的方法”,所以在完成第10步之后,我们可以重复一次,新建一个“Aria2rpc2”,可执行路径和第10步相同,参数模板填写“[-cookie COOKIE] [-out FNAME] [URL] -proxy http://127.0.0.1:XXXX”,其中“http://127.0.0.1:XXXX”的部分是八仙过海各显神通了,你懂的。当然,你也可以在webui-aria2的界面设置“科学上网的方法”,但特殊情况下每次都得手动不如直接在Flashgot里设置好自动来得爽。

完成以上步骤后,你已经可以在可视化界面下利用aria2下载了!之所以用aria2,因为天朝的网盘挂的挂,不挂的又有各种限制,aria2无疑是一条新的活路。通过各类脚本,aria2可以下载115、百度云、迅雷离线等等,但具体如何操作这里就不说了,有心人肯定会自己搞懂的,嘻嘻。凡事要有度,过了不好。

**********可视化aria2+Flashgot部署教程结束**********

摘抄自
https://zhuanlan.zhihu.com/p/21831960
https://bbs.saraba1st.com/2b/thread-1532478-1-1.html

2017-09
4

折腾aria2

By xrspook @ 16:40:15 归类于:烂日记

昨天花了一个晚上研究aria2,好不容易在睡觉前之前研究通了如何在Firefox里直接调用Flashgot然后在Aria2 WebUI里开始下载,而不是弹出aria2的命令提示符窗口。我以为一切都已经解决了。同样的配置,同样的文件拷贝到单位的电脑上却无论如何都无法还原。难道这是Win7 32位和64位的区别?以前不知道,但在我用过Win7之后就明白到其实64位的系统32位的程序其实还是可以兼容的。aria2的配置是一样的(里面和绝对地址有关的东西都已经改过来鸟),aria2的确有32位和64位之分,但我两个都试过了。WebUI没有32位和64位之分,我放在坚果云的同步文件夹里,而且那个东西里面也不存在什么设置,所以是一样的。唯一我觉得有可能不兼容的就是网友利用aria2rpc以go编译出来的exe文件,那个文件在64位的系统里会失效?否则真的无法解释为什么同样的Flashgot设置一个能成功调用一个不行。因为参数模板是一样的,可执行路径都指向已经编译好的aria2rpc,这些不会出错。在Flashgot里直接调用命令行的aria2是可以下载的,在Aria2 WebUI里添加链接也是可以下载的,但通过Flashgot就无法成功调用Aria2 WebUI,郁闷!如果已经编译好的go行不通,非常有可能就要用需要运行环境设置的py。为了一个超轻量级的下载器这般来有点儿过于劳师动众了。

家里的电脑可以用Flashgot调用Aria2 WebUI下载,而且通过那个传输过去的文件名不出错。单位这台电脑无法通过Flashgot调用Aria2 WebUI下载,如果把百度云的链接手动贴过去文件名会乱码。而且今天的测试证明文件也下载不完全,其中原因不明。文件名不对还可以接受,但文件下载不完全这个问题很严重!Aria2 WebUI界面显示文件已经下载成功,但实际上播放器却不能播放,这简直就是浪费感情啊!在没有折腾出个所以然之前,单位这台电脑只能通过命令行的界面控制下载,开始下载很容易,如何终止呢?直接关闭窗口吗?而且如果Flashgot直接调用aria2除非我在参数模板一个用上代理设置一个不用,否则下载开始后就没办法再回去了,下载之前就得想清楚。其实有点我想不明白,既然aria2已经有配置文件,为什么Flashgot的设置界面还要写那一大堆参数模板呢?那堆东西是传输给谁的呢?如果写那一堆东西可以传递给Aria2 WebUI,写那些也都值了,但如果在Flashgot里直接调用aria2c.exe文件会直接跳出命令行界面,但Aria2 WebUI那里却没反应,为什么我还要写参数模板?因为我也曾经试过路径用aria2c.exe,参数模板只写[URL]也一样可以正常下载。

360倒下了,QQ旋风倒下了,迅雷再也不支持离线和高速通道了,我们就只能吊死在百度云那里。是时候找一条新路了!

Page 1 of 11
COPYRIGHT @ 我的天 | Theme by xrspook | Power by WordPress | Valid XHTML 1.1 and CSS 3 Go to top