Moodle
Задача
Установить Moodle используя под apache2, используя локальный MySQL сервер. (Примерно так, как описано в документации, см. Настройка Moodle в среде Альт Линукс 5.0 Школьный Сервер.)
Установка
Установка пакетов
Потребуется установка следующих пакетов:
- moodle — код Moodle. По зависимостям вытягивает php5 и необходимые модули.
- moodle-lang-ru_utf8 — пакет русской локализации (по умолчанию присутствует только английская локаль).
- moodle-apache2 — настройки apache2 для работы Moodle. По зависимостям вытягивает apache2 и apache2-mod_php5.
- moodle-local-mysql — По зависимостям вытягивает MySQL-server и php5-mysql.
Создание и настройка БД
Будем использовать БД со следующими параметрами:
- имя —
moodle
- пользователь —
moodleuser
- пароль —
moodlepasswd
При условии локального MySQL сервера и отсутствии пароля для MySQL пользователя root
, можно использовать следующую последовательность команд (см. Создание базы данных):
$ mysql -u root
mysql> CREATE DATABASE moodle DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;
mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,CREATE TEMPORARY TABLES,DROP,INDEX,ALTER ON moodle.*
TO moodleuser@localhost IDENTIFIED BY 'moodlepasswd';
mysql> quit
$ mysqladmin -u root reload
Запуск web инсталлятора
Дальнейшая установка Moodle выполняется через web инсталлятор, запускаемый при обращении по URL вида http://<ip>/install.php
Создание config.php
См. Запуск установочного файла для создания файла config.php
Конфигурационные файлы Moodle:
- /var/www/webapps/moodle/config.php
- основной файл конфигурации
- /etc/sysconfig/mt-plugins
- параметры плагинов, в частности, плагина аутентификации через LDAP
Первичная настройка
См. # 6 Переход к странице администратора для продолжения конфигурации
Специфика ALT Linux
При установке пакета installed-db-office-server-moodle (в репозиториях p5 и p6 пакет назывался installed-db-office-server) Moodle получает следующие возможности:
Выставление пароля администратора
При установке дистрибутива или смене пароля системного администратора (root) он меняется и в Moodle (имя администратора admin) (хук /usr/lib/alterator/hooks/root.d/installed-db). То есть при установке дистрибутива ALT Linux с Moodle (например, Информика 6.0 Школьный Сервер) можно сразу зайти под администратором:
Адрес: https://<имя сервера>/moodle/ Имя пользователя: admin Пароль: такой же, как указали при установке для системного администратора
Аутентификация в ALT-домене
При использовании ALT-домена Moodle настраивается для аутентификации через LDAP (принимает пользователей, заведённых в домене) (хук /etc/hooks/hostname.d/94-moodle-ldap).
Фактически после создания домена в файле /etc/sysconfig/mt-plugins должны быть указаны два параметры:
<?php
$default_plugins_params = array(
'auth_plugin_ldap' => array(
'host_url' => 'ldap://localhost',
'contexts' => 'ou=People,<DN домена>',
...
В командной строке они прописываются так:
DOMAIN=ou=People,`cat /etc/openldap/ldap.conf | grep "^base" | sed 's/^base //'`
mt-install-auto --install=no --lang=ru --plugins-setparams --wwwrootnew --wwwrootsitename=$(hostname) --ldaphosturl=ldap://localhost --ldapcontexts="$DOMAIN" --authinsert='ldap'
К сожалению, contexts может не прописываться в старых версиях пакета installed-db-office-server. Добавьте его вручную, как показано выше.
Решение проблем
Запуск инсталлятора
Для запуска установщика нужно зайти на http://ip-адрес/moodle
Не удается инициализировать сессию PHP
После установки Moodle 2.5 (а возможно и прочих версий 2.x) невозможно зайти на сайт, появляется ошибка:
Не удается инициализировать сессию PHP; пожалуйста, убедитесь, что Ваш браузер принимает cookies.
Решение:
В /var/www/webapps/moodle/config.php добавляем строчку
$CFG->dbsessions='0';
перед строкой
require_once(dirname(__FILE__) . '/lib/setup.php');
Жмем Продолжить
Ссылки