Moodle session_start возвращает FALSE - PullRequest
3 голосов
/ 18 января 2020

Мне нужна помощь в установке Moodle v3.7.2. Я прошел все проверки конфигурации сервера во время установки, за исключением того факта, что сайт распознается как http вместо https, возможно, из-за прокси, который находится перед nginx, обслуживающим Moodle. Во всяком случае, когда я пытаюсь загрузить первую страницу, я получаю общую ошибку c:

$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

1 Ответ

0 голосов
/ 27 февраля 2020

Это более общее решение c, но вы проверили $CFG->wwwroot в файле config.php? Это должно быть что-то вроде «http s : //your.site.com/». Если вы забудете, что s Moodle не сможет создать соединение, если вы настроили свой веб-сервер / прокси для перенаправления пользователей на :443.
, я часто сталкивался с этой проблемой, когда настраивал SSL для нашего Moodle. Сервер.

...