秋水易冷
准备
OneDrive账号一枚
SSH能连上的服务器一台
域名两枚,并将域名解析到服务器上(子域名也行)
对Linux的几个常用命令了解,例如:cd ls rm mv vi echo
另外请自备一瓶六个核桃
耗时半个小时左右
OLAINDEX搭建
一、安装宝塔面板
wget -O install.sh http://download.bt.cn/install/install_6.0.sh && bash install.sh
注:bt 命令可调出控制面板
脚本执行完后,登录网页 http://ip:8888
登录之后,安装 LNMP (左边),需要注意的是,PHP 版本请选择 PHP 7.2 ,MySQL可以不选择(服务器配置低的,不推荐安装MySQL,不安装MySQL对本教程无任何影响,另外可节省大量安装时间)
二、PHP 配置
点击左侧菜单 软件管理–>PHP-7.2 设置–>安装扩展–>安装 fileinfo
然后点击 禁用函数–>找到 proc_open、 proc_get_status 、 exec 、 shell_exec 函数,并删除
删除完后重启PHP
三、安装 Composer
curl -sS https://getcomposer.org/installer | php
mv composer.phar /usr/local/bin/composer
四、创建网站
用宝塔创建一个网站并绑定域名,不需要数据库,PHP版本选择 PHP-72
五、安装 OLAINDEX
cd /www/wwwroot/你的域名 #就是先进入到你创建的web目录下
rm -rf *
git clone https://github.com/WangNingkai/OLAINDEX.git tmp
mv tmp/.git .
rm -rf tmp
git reset --hard
composer install -vvv #这里确保已经安装composer成功
chmod -R 755 storage/
chown -R www:www *
php artisan od:install #如果报权限问题,建议先执行权限命令
chmod 777 storage/app/config.json #赋予配置文件权限
注:为了防止域名导入出错,请想要一次全部输入执行的分上下两次执行
提示输入域名的时候,一定要这样写 https://你的域名
六、站点数据配置
先绑定子目录为 /public ,再关闭 防跨站攻击 (open_basedir)
设置伪静态为
location / {
try_files $uri $uri/ /index.php?$query_string;
}
设置域名SSL证书,开启强制HTTPS
七、绑定 OneDrive
登录网页 https://你的域名 ,按照下图操作
网页 https://你的域名/admin 进入后台,默认密码为 12345678 进行相关设置
八、其他
网页图片更改 ./public 目录下直接加 favicon.ico 图片文件
图床上传文件保存路径格式修改 ./app/Http/Controllers/ManageController.php (64行)
$middleName = '/'.date('Y-m-d').'/'.date('A-h-i').'/';
图床上传限制修改
两分钟内只能上传10张图片的限制 ./routes/web.php (50~51行)
Route::post('image/upload', 'ManageController@uploadImage')
->name('image.upload')->middleware('throttle:100,1', 'checkImage');
一次只能上传10张的限制 ./resources/views/default/image.blade.php (32行)
maxFiles: 100,
如果遇到缩略图无法打开的情况请关闭防盗链,并删掉或注释掉配置文件的如下部分(51~63行)
#location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
# {
# expires 30d;
# error_log off;
# access_log /dev/null;
# }
#
# location ~ .*\.(js|css)?$
# {
# expires 12h;
# error_log off;
# access_log /dev/null;
# }
Aria2搭建
wget -N --no-check-certificate https://raw.githubusercontent.com/ToyoDAdoubi/doubi/master/aria2.sh && chmod +x aria2.sh && bash aria2.sh
端口、目录默认即可
放行 6800 端口
注:为了方便管理Aria2下载的文件,你可以用宝塔创建一个指向下载目录 /usr/local/caddy/www/aria2/Download 的FTP
Aria2Ng搭建
一、创建网站
用宝塔创建一个网站并绑定域名,不需要数据库,PHP版本选择 纯静态
二、安装 Aria2Ng
cd /www/wwwroot/你的另一个域名 #就是先进入到你创建的web目录下
wget https://github.com/mayswind/AriaNg/releases/download/1.0.0/AriaNg-1.0.0.zip
yum install unzip
unzip AriaNg-1.0.0.zip
rm -rf AriaNg-1.0.0.zip
网页 http://你的另一个域名 进入,并填写Aria2密码,刷新界面,连接成功
如果想HTTPS访问Aria2Ng界面,除了在宝塔去部署SSL外,还需执行
echo "
rpc-secure=true
rpc-certificate=/www/server/panel/vhost/ssl/你的另一个域名/fullchain.pem
rpc-private-key=/www/server/panel/vhost/ssl/你的另一个域名/privkey.pem
" >> /root/.aria2/aria2.conf
service aria2 restart
下载完自动上传脚本
简介
该脚本是通过Aria2的一个参数 on-download-complete 调用的,传参 id 下载文件数 路径
安装
vi 命令写入自动上传脚本
vi /root/.aria2/up.sh
按 i ,然后复制下面的内容进去,再按 ESC 键,输入 :wq 就能保存退出; vi 命令相关用法自行了解( dd 删除一行)
#!/bin/bash
downloadpath='/usr/local/caddy/www/aria2/Download' #修改成Aria2下载文件夹
folder='/Aria2' #上传至网盘里的文件夹(自动创建)
if [ $2 -eq 0 ];then
exit 0
fi
path=$3 #取原始路径
olaindex=`find /www/wwwroot -name artisan` #OLAINDEX的artisan文件的绝对路径
while(true);do #path被赋值为Aria2下载目录,filepath被赋值为下载文件的绝对路径或第一层目录
filepath="$path"
path="${path%/*}"
if [ "$path" = "$downloadpath" ] && [ $2 -eq 1 ];then #单文件
php $olaindex od:upload "$filepath" "$folder/" #上传
rm -rf "$filepath" "$filepath.aria2" "$path/*.torrent" #删除
php $olaindex od:cache #刷新
exit 0
elif [ "$path" = "$downloadpath" ];then #文件夹
cd "$filepath"
for file in *;do #第一层目录
php $olaindex od:upload "$file" "$folder/${filepath##*/}"
rm -rf "$file"
done
for file in */* */*/*;do #第二、三层目录
php $olaindex od:upload "$file" "$folder/${filepath##*/}/${file%/*}"
rm -rf "$file"
done
rm -rf "$filepath" "$filepath.aria2" "$path/*.torrent"
php $olaindex od:cache
exit 0
fi
done
下面这是OneIndex的脚本
#!/bin/bash
downloadpath='/usr/local/caddy/www/aria2/Download' #修改成Aria2下载文件夹
folder='/Aria2' #上传至网盘里的文件夹(自动创建)
if [ $2 -eq 0 ];then
exit 0
fi
path=$3 #取原始路径
olaindex=`find /www/wwwroot -name one.php` #OneIndex的one.php文件的绝对路径
while(true);do #path被赋值为Aria2下载目录,filepath被赋值为下载文件的绝对路径或第一层目录
filepath="$path"
path="${path%/*}"
if [ "$path" = "$downloadpath" ] && [ $2 -eq 1 ];then #单文件
php $olaindex upload:file "$filepath" "$folder/" #上传
rm -rf "$filepath" "$filepath.aria2" "$path/*.torrent" #删除
php $olaindex cache:refresh #刷新
exit 0
elif [ "$path" = "$downloadpath" ];then #文件夹
php $olaindex upload:folder "$filepath" "$folder/"
rm -rf "$filepath" "$filepath.aria2" "$path/*.torrent"
php $olaindex cache:refresh
exit 0
fi
done
修改Aria2配置文件
chmod +x /root/.aria2/up.sh
echo "
seed-time=0 #不做种
on-download-complete=/root/.aria2/up.sh
" >> /root/.aria2/aria2.conf
service aria2 restart