一个基于ThinkCMS3的支持多用户BT种子下载自动进行视频转码支持在线播放的程序–YunBT

作者 : King 本文共6837个字,预计阅读时间需要18分钟 发布时间: 2024-10-4 共15人阅读

BT下载YunBT视频转码

一个基于ThinkCMS3的支持多用户BT种子下载自动进行视频转码支持在线播放的程序–YunBT

本文目录

介绍

基于ThinkCMS的YunBT的多用户下载程序,知识兔支持Magnet和HTTP下载。每个单独用户支持10个任务,默认下载文件最大为10GB,知识兔可以在后台修改。下载完成后用户可以直接查看下载的文件仅支持mp4文件在线播放。管理员可以添加用户的下载量及查看管理下载任务。

暂不支持下载工具下载,知识兔可以在浏览器中下载,后续将添加。

GitHub地址:https://github.com/maysrp/yunbt/tree/dev

测试站点:http://www.yunbt.net/

一个基于ThinkCMS3的支持多用户BT种子下载自动进行视频转码支持在线播放的程序–YunBT

一个基于ThinkCMS3的支持多用户BT种子下载自动进行视频转码支持在线播放的程序–YunBT

安装

Aria2

安装Aria2
apt-get update && apt-get install -y aria2

screen -dmS aria2 aria2c --enable-rpc --rpc-listen-all=true --rpc-allow-origin-all -c
若要下载Magnet需要导入DHT.data

PHP

php>7
lnmp下php安装fileinfo插件
lnmp1.4 安装php fileinfo扩展 方法

  • 第一步:在lnmp1.4找到php安装的版本
    使用命令 tar -jxvf php-7.1.7.tar.bz2 解压
  • 第二步: 在解压的php-7.1.7文件夹里找到fileinfo文件夹,然后知识兔使用命令 cd /home/xxx/lnmp1.4/src/php-7.1.7/ext/fileinfo进入到fileinfo文件夹
  • 第三步:输入/usr/local/php/bin/phpize 得到数据
  • 第四步: 使用如下命令编译安装
    ./configure -with-php-config=/usr/local/php/bin/php-config
    make && make install
  • 第五步:再修改/usr/local/php/etc/php.ini 查找:extension = 再最后一个extension= 后面添加上extension = “fileinfo.so” 保存,执行/etc/init.d/php-fpm restart 重启。

Nginx

nginx修改fastcgi.conf配置

lnmp下该文件在 /usr/local/nginx/conf/fastcgi.conf

把其中的

#fastcgi_param PHP_ADMIN_VALUE "open_basedir=$document_root/:/tmp/:/proc/";fastcgi_param PHP_ADMIN_VALUE "open_basedir=$document_root/../:/tmp/:/proc/";

Nginx 配置

下文件为lnmp下的配置

server { listen 80; #listen [::]:80; server_name yunbt.w4.pwt; index index.html index.htm index.php default.html default.htm default.php; root /home/wwwroot/www.yunbt.net/public;location / { if (!-e $request_filename) { rewrite ^(.*)$ /index.php?s=/$1 last; } rewrite ^/file/(.*) /file.php?file=$1 last;}location /afile{ internal; alias /home/wwwroot/www.yunbt.net/public/file; } #error_page 404 /404.html; # Deny access to PHP files in specific directory #location ~ /(wp-content|uploads|wp-includes|images)/.*\.php$ { deny all; }location ~* ^/(file|upload)/.*\.(php|php5)$ { deny all; } include enable-php.conf; location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$ { expires 30d; } location ~ .*\.(js|css)?$ { expires 12h; } location ~ /.well-known { allow all; } location ~ /\. { deny all; } access_log /home/wwwlogs/www.yunbt.net.log; }

数据库

创建数据库名yunbt
用户名yunbt
密码a123456
数据库导入yunbt.sql

数据库配置 data/conf/database.php

管理员

用户名 admin
密码 a123456

cron

添加定时任务
crontab -e

*/1 * * * * curl http://www.yunbt.net/portal/cron/download*/3 * * * * python3 /home/wwwroot/www.yunbt.net/python/cron_move.py*/1 * * * * python3 /home/wwwroot/www.yunbt.net/python/cron_ffmpeg.py

请替换其中www.yunbt.net 为你自己的域名

python

python3
pymysql
pip3 install pymysql
cron_ffmpeg.py

  • 44行:数据库配置
  • 50行:设置你的web路径

cron_move.py

  • 14行:设置你的web路径
  • 15行:视频文件[无须修改]
  • 74行:数据库配置

ffmpeg

apt-get install ffmpeg

权限修改

修改data文件夹下的权限

chmod -R 777 data/
chmod -R 777 public/

管理后台

your_domain.com/admin

目前功能:

  • 添加用户下载量
  • 下载管理
  • 修改当前最大下载文件量[默认10GB]
  • 分享功能
  • 视频转码

 

宝塔面板安装YunBT教程

1、安装宝塔

#CentOS系统wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh#Ubuntu系统wget -O install.sh http://download.bt.cn/install/install-ubuntu_6.0.sh && sudo bash install.sh#Debian系统wget -O install.sh http://download.bt.cn/install/install-ubuntu_6.0.sh && bash install.sh

安装完成后,进入面板,知识兔点击左侧软件管理,然后知识兔安装PHP 7+NginxMysql

再找到左侧软件管理-PHP管理-设置-安装Fileinfo扩展。

#如果知识兔Fileinfo拓展安装失败,就是内存太小,我们可以添加swap,不适用于ovz1、脚本添加,脚本地址:https://www.moerats.com/archives/722/2、面板添加,找到左侧软件管理-系统工具-安装Linux工具箱,然后知识兔进入工具箱添加。

2、下载源码
先点击左侧网站-添加站点,然后知识兔使用命令:

#进入到网站根目录,请修改为自己网站根目录再运行cd /www/wwwroot/www.zhishitu.com#下载源码wget https://github.com/maysrp/yunBT/archive/dev.zip#解压并删除压缩包unzip dev.zip && rm -rf dev.zip#移动到根目录mv yunBT*/* ./#授权chmod -R 777 data/chmod -R 777 public/

3、配置网站
进入到域名设置,知识兔点击网站目录,去除跨站攻击的,并设置运行目录为public

再点击伪静态设置,填入以下代码:

#先修改下面的域名路径后,再添加进去location / {if (!-e $request_filename) { rewrite ^(.*)$ /index.php?s=/$1 last; } rewrite ^/file/(.*) /file.php?file=$1 last;}location /afile{ internal; alias /www/wwwroot/www.zhishitu.com/public/file; }location ~* ^/(file|upload)/.*\.(php|php5)$ { deny all; }

4、配置数据库
点击左侧数据库-添加数据库,设置好数据库名、密码,然后知识兔手动导入网站根目录的yunbt.sql数据库文件。

然后知识兔编辑数据库信息,知识兔使用命令:

#进入到网站根目录,请修改为自己网站根目录再运行cd /www/wwwroot/www.zhishitu.com#编辑数据库信息nano data/conf/database.php

修改你的数据库信息,然后知识兔使用Ctrl+xy保存退出。

5、添加定时任务
最后点击面板左侧计划任务-类型访问URL,周期每1分钟,URL地址为https://www.zhishitu.com/portal/cron/download,请先修改为自己的域名后再添加。

还有最后一步就是安装Aria2,这个教程看下面。

安装Aria2

#64位系统下载静态文件wget https://github.com/q3aql/aria2-static-builds/releases/download/v1.34.0/aria2-1.34.0-linux-gnu-64bit-build1.tar.bz2#32位系统下载静态文件wget https://github.com/q3aql/aria2-static-builds/releases/download/v1.34.0/aria2-1.34.0-linux-gnu-32bit-build1.tar.bz2#解压文件并进入文件夹tar jxvf aria2-*.tar.bz2 && rm -rf aria2-*.tar.bz2 && cd aria2-*#开始安装make install

后台运行:

screen -dmS aria2 aria2c --enable-rpc --rpc-listen-all=true --rpc-allow-origin-all -c

安装Aria2后,基本上算安装完成了。

最后打开网站,管理员用户名admin、密码a123456。后台路径/admin。然后知识兔可以去后台自己好好编辑前台模板,ThinkCMS功能设置还是挺多的,慢慢折腾吧。

 

LNMP安装

1、安装lnmp
这里使用军哥的lnmp 1.5一键包,知识兔使用命令:

#下载并解压压缩包wget http://soft.vpser.net/lnmp/lnmp1.5.tar.gz -cO lnmp1.5.tar.gz && tar zxf lnmp1.5.tar.gz#进入安装文件夹cd lnmp1.5#由于一键包默认不安装Fileinfo拓展,所以我先编辑下安装配置文件nano lnmp.conf

然后知识兔将Enable_PHP_Fileinfo='n'后面的n改成y,然后知识兔使用Ctrl+xy保存退出。

如果知识兔不想用nano命令修改,那可以直接使用sed命令修改:

sed -i "s#Enable_PHP_Fileinfo=.*#Enable_PHP_Fileinfo='y'#"'lnmp.conf'

由于安装Fileinfo有点需要内存,如果知识兔内存太低(包括512M),知识兔建议提前加点SwapSwap一键脚本→传送门

开始安装lnmp,知识兔使用命令:

./install.sh lnmp

然后知识兔输入数据库密码,知识兔选择PHP 7+版本,直到安装完成。

2、安装Fileinfo

提示:使用本教程的方法安装lnmp 1.5的可以跳过该步骤。

如果知识兔你已经安装过军哥的lnmp一键包,那么你可以先看下有没有安装过fileinfo,知识兔使用命令:

#如果知识兔有输出fileinfo信息,则已安装php -m | grep fileinfo

没输出信息的话,那就安装下,安装方法:

#lnmp 1.4及更低版本#进入到根目录下lnmp安装包目录,要是之前删除了,直接去https://lnmp.org/download.html下载并解压cd lnmp1.4#修改upgrade_php.sh,将里面的--disable-fileinfo全部删除nano include/upgrade_php.sh#然后知识兔升级php./upgrade.sh php#lnmp 1.5+版本方法参考上面,先修改lnmp安装包目录下的lnmp.conf文件,将里面的Enable_PHP_Fileinfo='n'后面的n改成y保存,然后知识兔使用 ./upgrade.sh php升级。

3、添加网站和数据库

lnmp vhost add

然后知识兔输入你的域名,并创建一个数据库,大致如下:

#创建数据库这里,这里演示的数据库名和用户为yunbt,密码为a123456。Create database and MySQL user with same name (y/n) yEnter database name: yunbtPlease enter password for mysql user yunbt: a123456

4、下载源码

#进入到网站根目录,请修改为自己网站根目录再运行cd /home/wwwroot/www.zhishitu.com#下载源码wget https://github.com/maysrp/yunBT/archive/dev.zip#解压并删除压缩包unzip dev.zip && rm -rf dev.zip#移动到根目录mv yunBT*/* ./#授权chmod -R 777 data/chmod -R 777 public/#再导入根目录的yunbt数据库文件,先修改为自己的数据库名和密码后运行mysql -uyunbt -pa123456 yunbt < yunbt.sql#编辑数据库信息nano data/conf/database.php

修改你的数据库信息,然后知识兔使用Ctrl+xy保存退出。

5、修改nginx配置
编辑fastcgi.conf

nano /usr/local/nginx/conf/fastcgi.conf

修改以下参数:

#fastcgi_param PHP_ADMIN_VALUE "open_basedir=$document_root/:/tmp/:/proc/";fastcgi_param PHP_ADMIN_VALUE "open_basedir=$document_root/../:/tmp/:/proc/";

再编辑域名配置文件:

#修改为自己域名后运行nano /usr/local/nginx/conf/vhost/www.zhishitu.com.conf

在适当位置添加以下代码:

#先修改下面的域名路径后,再添加进去location / {if (!-e $request_filename) { rewrite ^(.*)$ /index.php?s=/$1 last; } rewrite ^/file/(.*) /file.php?file=$1 last;}location /afile{ internal; alias /home/wwwroot/www.zhishitu.com/public/file; }location ~* ^/(file|upload)/.*\.(php|php5)$ { deny all; }

最后使用lnmp restart命令重启lnmp

6、设置定时任务

#将域名修改成自己的echo"*/1 * * * * curl https://www.zhishitu.com/portal/cron/download" > bt.croncrontab bt.cronrm -rf bt.cron

还有最后一步就是安装Aria2,这个教程看上面宝塔面板那里的Aria2教程即可。

下载仅供下载体验和测试学习,不得商用和正当使用。

[ppwp passwords=”zhishitu.cn”]

下载体验

应版权要求,禁止分享,敬请谅解,有问题务必找客服哈。

如何获取解压密码

有问题找客服哈,并领取学习福利!

[/ppwp]

点击下载

小鱼网是一个美好的开源学习社区,学习编程,学习WordPress,下载WordPress插件主题,
小鱼网 » 一个基于ThinkCMS3的支持多用户BT种子下载自动进行视频转码支持在线播放的程序–YunBT

常见问题FAQ

发表回复

分享最优质的学习资料

立即查看 了解详情