从零搭建Aria2下载神器:我的远程下载+WebUI踩坑实录
大家好,我是33blog的技术小编。最近因为需要远程管理下载任务,折腾了一套Aria2+WebUI的方案,过程中踩了不少坑,今天就把完整的搭建过程分享给大家,希望能帮到有同样需求的朋友。
为什么选择Aria2?
说实话,最开始我是在Transmission和qBittorrent之间犹豫的。但Aria2有几个优势最终打动了我:
- 轻量级,资源占用极小(我的树莓派终于不用再卡了)
- 支持HTTP/FTP/BT/Magnet多种协议
- 完善的RPC接口,方便二次开发
安装Aria2服务端
我的服务器是Ubuntu 20.04,安装非常简单:
sudo apt update
sudo apt install aria2 -y
这里有个小坑:有些源里的版本比较老,如果需要最新版建议从源码编译。我就因为版本问题折腾了好久BT下载速度上不去的问题…
配置Aria2
创建配置文件时我参考了网上的模板,但发现有些参数需要根据实际情况调整:
# /etc/aria2/aria2.conf
dir=/mnt/downloads
rpc-secret=你的密码
enable-rpc=true
rpc-listen-all=true
max-concurrent-downloads=5
continue=true
max-connection-per-server=16
min-split-size=1M
split=16
特别提醒:rpc-secret
一定要设置!我就因为偷懒没设置,结果被扫到服务器上跑了一堆挖矿程序…
WebUI选择与部署
试过几个前端界面后,我最终选择了AriaNg,原因很简单:
- 纯静态页面,直接扔Nginx里就能用
- 界面清爽,功能齐全
- 支持中文(对我这种英语渣太友好了)
部署步骤:
wget https://github.com/mayswind/AriaNg/releases/download/1.3.4/AriaNg-1.3.4.zip
unzip AriaNg-1.3.4.zip -d /var/www/ariang
Nginx反向代理配置
为了让外网能访问,我加了Nginx配置:
server {
listen 80;
server_name aria.yourdomain.com;
location / {
root /var/www/ariang;
index index.html;
}
location /jsonrpc {
proxy_pass http://localhost:6800;
proxy_set_header Host $host;
}
}
注意:/jsonrpc
这个路径要和AriaNg设置里的RPC地址对应,我一开始没注意这个,死活连不上服务端。
开机自启动
最后一步,让Aria2开机自动运行。我选择用systemd:
# /etc/systemd/system/aria2.service
[Unit]
Description=Aria2 Service
After=network.target
[Service]
User=root
ExecStart=/usr/bin/aria2c --conf-path=/etc/aria2/aria2.conf
[Install]
WantedBy=multi-user.target
然后执行:
sudo systemctl enable aria2
sudo systemctl start aria2
使用体验
这套方案已经稳定运行3个月了,分享几个实用技巧:
- 手机端可以直接访问WebUI添加下载
- 配合浏览器插件可以实现”右键→Aria2下载”
- BT下载建议搭配Tracker服务器列表(我收集了一份优质Tracker列表)
如果大家在搭建过程中遇到问题,欢迎在评论区交流。下次我准备写写如何给Aria2加上微信通知功能,感兴趣的话可以关注我的博客更新~
正好最近也在折腾Aria2,楼主的教程很详细,特别是那个rpc-secret的提醒太重要了!