搭建aria2服务器

首先安装:

$ sudo pacman  -S aria2

然后创建如下systemd配置(放到 /etc/systemd/system/aria2.service):

[Unit]
Description=Aria2 Service
After=network.target

[Service]
User=http
ExecStart=/usr/bin/aria2c --enable-rpc --rpc-listen-all --rpc-allow-origin-all --save-session /etc/aria2/session.lock --input-file /etc/aria2/session.lock --conf-path=/etc/aria2/aria2.conf

[Install]
WantedBy=default.target

创建aria2配置文件:

$ sudo mkdir /etc/aria2
$ sudo touch /etc/aria2/session.lock
$ sudo vim /etc/aria2/aria2.conf

把如下配置贴进去:

continue # 断点续传
dir=/data/download  # 下载路径,注意要配置好写入权限
file-allocation=none  # 是否prealloc,我选择不
log-level=info # 日志等级
max-connection-per-server=4 # 每个服务器4个连接
max-concurrent-downloads=3 # 最多3个并发下载
enable-http-pipelining=true # 是否开启pipelining
rpc-secret=<token> # 这里要换成你自己的token

然后启动aria2:sudo systemctl start aria2

可以装一个前端,我是用的是 aria2-webui

$ cd /data/html
$ git clone [email protected]:ziahamza/webui-aria2.git aria2

Nginx加个配置:

        location /dl {
            alias /data/html/aria2/docs;
            index  index.html index.htm;
        }

        location /jsonrpc {
            proxy_pass http://127.0.0.1:6800;
        }

就可以访问 http://127.0.0.1/dl 来下载文件了,当然,访问到网页之后记得填上面配置文件里的token。


更多文章
  • Web开发系列(二):HTTP协议
  • Web开发系列(一):从输入网址到最后,这个过程经历了什么?
  • SNI: 让Nginx在一个IP上使用多个证书
  • Haskell: infixl, infixr, infix
  • Haskell简明教程(五):处理JSON
  • Haskell简明教程(四):Monoid, Applicative, Monad
  • HTTPS 的详细流程
  • OAuth2 为什么需要 Authorization Code?
  • 任务队列怎么写?python rq源码阅读与分析
  • XMonad 配置教程
  • Haskell简明教程(三):Haskell语法
  • Haskell简明教程(二):从命令式语言进行抽象
  • Haskell简明教程(一):从递归说起
  • 2017年必装的VIM插件推荐
  • TCP/IP简明教程 - 从零构建TCP/IP协议(二)连接,断开与拥塞控制