【发布时间】:2020-05-05 01:31:01
【问题描述】:
我在安装 Moodle v3.7.2 时需要一些帮助。 我在安装过程中通过了所有服务器配置检查,除了站点被识别为 http 而不是 https,可能是因为代理位于服务 Moodle 的 nginx 前面。无论如何,当我尝试加载第一页时,我收到一个一般错误:
$string['servererror'] = 'An error occurred whilst communicating with the server';
我已经调查了这个错误的源代码,并找到了动机:
在路径 /moodle/lib/classes/session/manager.php,第 90 行,此检查失败:
if (!self::$handler->start())
start() 方法只是调用一个 php 函数:
session_start();
返回 FALSE 并抛出异常。关于如何解决这个问题的任何想法?非常感谢。
编辑:我也尝试在数据库中存储会话:
$CFG->session_handler_class = '\core\session\database';
$CFG->session_database_acquire_lock_timeout = 120;
但是运气不好,现在失败的函数是:
session_set_save_handler
【问题讨论】:
-
我遇到了同样的问题,我尝试在 Ubuntu WSL apache 2 php 7.1 上安装。你弄明白了吗?
-
我最终清除了缓存并将 $CFG->session_handler_class= '\core\session\database';在 config.php 并导航到 / 现在它正在工作
标签: php session exception moodle moodle-api