今天摸鱼整理了下手中的服务器,还有两台空着挂探针,真的太可惜了
想了想自己还没有BT下载站,不如搭建个Aria2
来供不时之需
也能有效防止自己再次忍不住剁手买鸡
搭建环境:CentOS7+,宝塔面板(可选),PHP 5.6+,Nginx
安装OneIndex
先添加域名,然后上传程序文件到网站根目录/www/wwwroot/xx.xx,将文件解压出来,并设置config/、cache/目录为777
权限
点击域名设置,添加Nginx
伪静态
location / {
if (!-f $request_filename){
set $rule_0 1$rule_0;
}
if (!-d $request_filename){
set $rule_0 2$rule_0;
}
if ($rule_0 = "21"){
rewrite ^/(.*)$ /index.php?/$1 last;
}
}
最后打开域名进行安装,会有提示获取Token跟ID,绑定账号即可。
配置完成后可以进入xx.xx/admin
,默认密码:oneindex
。
如果想配置SSL可以在宝塔里申请强制HTTPS并配置证书
安装Aria2
root用户下运行
wget -N --no-check-certificate http://download.cll66.cn/aria2.sh && chmod +x aria2.sh && bash aria2.sh
安装完成后,如果我们想修改密码、下载文件位置、端口的话,可以使用命令./aria2.sh
,再选择修改配置
如果用宝塔,在安全里开放你设置的登录端口以及6800:6900端口
这里建议使用该脚本配置自动更新BT-Tracker
服务器,对下载BT有加成。
安装AriaNg
先添加域名,然后上传程序文件到网站根目录/www/wwwroot/xx.xx,将文件解压出来
此时就可以访问你的域名来配置你的Aria2了,分别填入RPC端口和秘钥
如果你要设置HTTPS访问,可以修改/root/.aria2
这个隐藏目录中的aria2.conf文件
把rpc-secure=true前面的#注释掉
把rpc-certificate=/root/xxx.pem前面的#注释掉,并且把/root/xxx.pem替换成你HTTPS站点所配置的pem文件(有的也可以是crt文件)
把rpc-private-key=/root/xxx.key前面的#注释掉,并且把/root/xxx.key替换成你HTTPS站点所配置的key私钥文件。
然后保存重启aria2,这个时候再打开HTTPS的AriaNG网站,输入RPC密钥,即可连接成功。
如果你是宝塔面板配置的,在申请SSL证书过后,证书需要这样配置
# 启用加密后 RPC 服务需要使用 https 或者 wss 协议连接
rpc-secure=true
# 在 RPC 服务中启用 SSL/TLS 加密时的证书文件(.pem/.crt)
rpc-certificate=/www/server/panel/vhost/cert/xx.xx/fullchain.pem
# 在 RPC 服务中启用 SSL/TLS 加密时的私钥文件(.key)
rpc-private-key=/www/server/panel/vhost/cert/xx.xx/privkey.pem
配置自动上传Oneindex
先在/root/.aria2
文件夹新建一个上传脚本,命名oneindexup.sh
。
#!/bin/bash
path=$3
downloadpath='/usr/local/caddy/www/aria2/Download' #修改成Aria2下载文件夹(默认为此位置)
domain='xx.xx' #修改成oneindex域名
if [ $2 -eq 0 ]
then
exit 0
fi
while true; do #提取下载文件根路径,如把/data/a/b/c/d.jpg变成/data/a
filepath=$path
path=${path%/*};
if [ "$path" = "$downloadpath" ] && [ $2 -eq 1 ] #如果下载的是单个文件
then
php /www/wwwroot/$domain/one.php upload:file $filepath /$folder/
rm -rf $filepath
php /www/wwwroot/$domain/one.php cache:refresh
exit 0
elif [ "$path" = "$downloadpath" ]
then
php /www/wwwroot/$domain/one.php upload:folder $filepath /$folder/
rm -rf "$filepath/"
php /www/wwwroot/$domain/one.php cache:refresh
exit 0
fi
done
然后进行授权,并配置自动上传
chmod +x /root/.aria2/oneindexup.sh
echo "on-download-complete=/root/.aria2/oneindexup.sh" >>/root/.aria2/aria2.conf
#重启Aria2
service aria2 restart