ejabberd - ejabberd 20.04 mod_http_upload 不工作
问题描述
我已经在 rhel 7.5 上安装了 ejabberd 20.04。出于测试目的,防火墙已停止,selinux 已禁用。我正在使用 gajim 1.2.1 作为客户端。在我的/opt/ejabberd/conf/ejabberd.yml
我只添加了以下几行:
listen:
request_handlers:
"/upload": mod_http_upload
shaper_rules:
soft_upload_quota:
1000: all
hard_upload_quota:
1100: all
modules:
mod_http_upload:
put_url: "https://@HOST@:5443/upload"
docroot: /ejabberd/upload/
其他一切都是默认的。我没有替换证书文件。当我尝试发送文件时,没有任何反应。里面/opt/ejabberd/logs/ejabberd.log
只有:
[info] <0.468.0>@mod_http_upload:create_slot:832
Got HTTP upload slot for test@chat.im.test/chat.im.test
(file: testfile.txt, size: 14242)
[info] <0.393.0>@ejabberd_listener:accept:256
(<0.551.0>) Accepted connection
[::ffff:192.168.10.10]:50749 -> [::ffff:192.168.20.10]:5443
我究竟做错了什么?
解决方案
请注意,如果您提供带有 HTTPS 的 URL,例如
modules:
mod_http_upload:
put_url: https://@HOST@:5443/upload
然后你必须启用 TLS,比如
listen:
-
port: 5443
ip: "::"
module: ejabberd_http
tls: true
request_handlers:
/upload: mod_http_upload
另一方面,如果你没有得到足够的信息记录,你可以试试这个,它可能会提供一些有意义的键:
loglevel: debug
推荐阅读
- c - 初学者问题:for循环没有按预期工作
- arduino - esp8266 软AP显示错误名称
- angular - 如何在 IDE (WebStorm) 中将 npm 包引用到它的源代码?
- python - 如何使用某些行数据在熊猫中创建小计记录
- pandas - 根据列名和值将数据框中的值替换为另一个数据框中的值
- scikit-learn - 我试图拟合和评分逻辑回归模型但出现错误,任何人都可以帮我解决这个错误
- css - `.prose ol[type="A" s]`最后一个`s`在CSS中是什么意思?
- python - 使用启动文件组合两个节点,结果 cv2.imwrite() 不起作用
- c# - TIA Portal V16 CAx-Operations - Siemens TIA Openness User Group not found
- sql - 如何知道 Mapbasic 中隐藏的 SQL 运算符或函数?