Moodle平台BigBlueButton录制内容未同步问题求助
问题核心
录制完成后无法同步到Moodle,BigBlueButton回调请求触发400错误,日志显示:
I, [2023-08-13T12:51:53.608989 #330293] INFO -- : Sending request to http://www.dehaonline.com/mod/bigbluebuttonbn/bbb_broker.php?action=recording_ready&bigbluebuttonbn=16
I, [2023-08-13T12:51:53.932772 #330293] INFO -- : Callback HTTP request failed: 400 Bad Request. Caught exception: "kid" empty, unable to lookup correct key (code 400)
重建录制无效,BigBlueButton管理员确认问题源于Moodle端。该报错指向JWT验证环节的kid字段缺失/无效,与bbb_broker.php的密钥配置或JWT处理逻辑直接相关。
解决步骤
- 核对JWT密钥与
kid配置
进入Moodle后台的BigBlueButtonBN插件设置页,确保已正确配置JWT密钥及对应的kid值,且该值与BigBlueButton后台的JWTkid完全一致,不能留空。 - 验证JWT回调格式
检查BigBlueButton发送的JWT头是否包含有效kid字段。若BBB端未配置kid,需协调管理员补充;若Moodle端无法解析kid,需排查bbb_broker.php中JWT密钥查找的代码逻辑。 - 清理缓存并重启服务
清理Moodle插件缓存,重启Web服务器(如Nginx/Apache)及PHP-FPM服务,确保配置变更生效。同时重启BigBlueButton的回调服务,避免旧请求缓存干扰。 - 检查文件权限与PHP依赖
确认bbb_broker.php文件权限为Web服务器用户可访问,且服务器已安装ext-jwt扩展——缺失该扩展会导致JWT解析失败,无法识别kid字段。 - 排查Moodle系统日志
查看Moodle系统日志(后台日志页面或服务器日志目录),获取400错误的更多细节,比如密钥不匹配的具体提示,辅助定位问题。
内容的提问来源于stack exchange,提问作者kardelen kamsız
相关产品推荐
相关产品推荐

