护符呢该 发表于 2023-4-30 10:31:01

写了一个网盘程序,代替 ys168

ys168 懂的都懂,可惜市面上没有找到差不多的网盘程序,自己用 Python 写了个,演示地址:

网址:141.94.115.2

密码:poiuytrewq

1C1G 50G 硬盘 50M 的小水管凑合用下,过两天就改密码了,以下为源码及安装指南。


安装要求:

Python >= 3.9,目前主流发行版应该只有 Debian11 能满足吧,更低 Python 版本懒得兼容了。

Nginx,版本没有特别要求,但因为用到了 X-Accel-Redirect,必须要使用 Nginx,当然你也可以自己兼容其他程序。


安装步骤:

以下安装步骤基于 Debian11 全程使用 Root 用户。

1. 创建文件夹,下载源码或者复制粘贴到 addfile.py 文件,这里直接下载

mkdir /opt/addfilecd /opt/addfilewget http://141.94.115.2/addfile.py

2. 编辑 addfile.py(可选步骤)

ROOT = Path('/home/wwwroot/default')PASSWORD = 'poiuytrewq'

将文件开头这两行换成你自己想要的目录和密码。

3. 安装依赖

apt install python3-pippip3 install index.py jinja2 uvicorn gunicorn

4. 创建专用用户和用户组

groupadd addfileuseradd -s /sbin/nologin -M -g addfile addfile

修改目录拥有者,不然无**常读写文件,记得对应你上面的程序和数据目录。

chown -R addfile:addfile /opt/addfilechown -R addfile:addfile /home/wwwroot/default

5. 创建并写入 /etc/systemd/system/addfile.service

Description=addfile daemonAfter=network.targetType=notifyUser=addfileGroup=addfileRuntimeDirectory=addfileWorkingDirectory=/opt/addfileExecStart=/usr/local/bin/gunicorn -k uvicorn.workers.UvicornWorker addfile:appExecReload=/bin/kill -s HUP $MAINPIDKillMode=mixedTimeoutStopSec=5PrivateTmp=trueWantedBy=multi-user.target

写入完毕后就可以启动了

systemctl start addfilesystemctl enable addfile

6. 配置 Nginx 文件

      location /      {            proxy_pass http://127.0.0.1:8000;      }      location /__x__/      {            internal;            alias /home/wwwroot/default/;      }

关键的就这两行,重载配置就好了

nginx -s reload

heyuij8892309 发表于 2023-4-30 10:31:09

nginx 限制了 50M,这个自己部署的时候改下就行了

灌水王 发表于 2023-4-30 10:32:01

不能放歌曲

灌水王 发表于 2023-4-30 10:32:35

哈哈,赶紧关了。你看MJJ都传了啥上去。

灌水王 发表于 2023-4-30 10:33:14

413 Request Entity Too Largenginx

灌水王 发表于 2023-4-30 10:33:56

绑定,这是小鸡上的盘?

灌水王 发表于 2023-4-30 10:34:29

小鸡上的,只能用本地文件

sae588 发表于 2023-4-30 10:34:54

能实现跟ys168一样吗?无限开分盘https://cdn.jsdelivr.net/gh/master-of-forums/master-of-forums/public/images/patch.gif

夜色 发表于 2023-4-30 10:35:09

我登录了怎么还无法下载。

灌水王 发表于 2023-4-30 10:35:50

能支持onedrive么
页: [1]
查看完整版本: 写了一个网盘程序,代替 ys168