6个版本
新 0.5.1 | 2024年8月14日 |
---|---|
0.5.0 | 2024年8月2日 |
0.4.2 | 2024年7月27日 |
0.4.1 | 2024年5月19日 |
0.3.2 | 2024年4月15日 |
#316 在 网络编程
每月 240 次下载
54KB
1.5K SLoC
关于
一个轻量级的外部HTTP上传服务器,适用于XMPP用户上传,与prosody和ejabberd配置兼容。它目前具有以下功能
- 阻止MIME类型
- 当文件超过时间差时删除文件
- 记录流量
- 在小型数据库(CBOR序列化表)中保存元数据
- 在实现版本之间切换
- 作为独立守护进程运行服务器
先决条件
至少版本3.0的Python安装。版本1.70或更高版本的Rust安装。
自动安装
这将为您自动编译和安装系统范围内的软件,但您需要在install.py中设置日志路径以匹配您的配置,否则您仍然可以自己创建/删除目录。
注意
如果您进行交叉编译,您需要在脚本中设置COMPILE_TARGET以使用rustc的构建目标进行自动安装。请参阅交叉编译。
使用git克隆仓库
进入目录
cd xmpp-http-upload
运行以安装
sudo ./install.py install
如果您想卸载
sudo ./install.py uninstall
启动服务
Systemd
启动服务
systemctl start xmpp-http-upload
停止服务
systemctl stop xmpp-http-upload
手动守护进程
以root身份运行
/usr/bin/xmpp-http-upload -c [配置文件]
要终止进程
kill prep xmpp-http-upload
XMPP设置
这取决于您的XMPP服务器软件,应在相应的文档中查找。
Prosody
请参阅以下网站,了解Prosody中的配置工作原理。
Ejabberd
在您的Ejabberd配置文件中使用以下行
mod_http_upload:
put_url: "https://your-upload-url.here"
external_secret: "secret"
注意
不要忘记在反向代理中正确重映射URL,否则您可能会遇到404/403请求。例如,请参阅proxy.header下的mod_proxy。
依赖关系
~4.5–6MB
~139K SLoC