Moodle: различия между версиями
(не показано 9 промежуточных версий 3 участников) | |||
Строка 34: | Строка 34: | ||
:параметры плагинов, в частности, плагина аутентификации через LDAP | :параметры плагинов, в частности, плагина аутентификации через LDAP | ||
=== Специфика ALT Linux | ===Первичная настройка=== | ||
См. [http://docs.moodle.org/archive/ru/%D0%A3%D1%81%D1%82%D0%B0%D0%BD%D0%BE%D0%B2%D0%BA%D0%B0_Moodle#.D0.9F.D0.B5.D1.80.D0.B5.D1.85.D0.BE.D0.B4_.D0.BA_.D1.81.D1.82.D1.80.D0.B0.D0.BD.D0.B8.D1.86.D0.B5_.D0.B0.D0.B4.D0.BC.D0.B8.D0.BD.D0.B8.D1.81.D1.82.D1.80.D0.B0.D1.82.D0.BE.D1.80.D0.B0_.D0.B4.D0.BB.D1.8F_.D0.BF.D1.80.D0.BE.D0.B4.D0.BE.D0.BB.D0.B6.D0.B5.D0.BD.D0.B8.D1.8F_.D0.BA.D0.BE.D0.BD.D1.84.D0.B8.D0.B3.D1.83.D1.80.D0.B0.D1.86.D0.B8.D0.B8 # 6 Переход к странице администратора для продолжения конфигурации] | |||
== Специфика ALT Linux == | |||
При установке пакета {{pkg|installed-db-office-server}} Moodle получает следующие возможности: | При установке пакета {{pkg|installed-db-office-server-moodle}} (в репозиториях p5 и p6 пакет назывался {{pkg|installed-db-office-server}}) Moodle получает следующие возможности: | ||
=== Выставление пароля администратора === | |||
При установке дистрибутива или смене пароля системного администратора (root) он меняется и в Moodle (хук {{path|/usr/lib/alterator/hooks/root.d/installed-db}}). То есть при установке дистрибутива ALT Linux с Moodle (например, Информика 6.0 Школьный Сервер) можно сразу зайти под администратором: | При установке дистрибутива или смене пароля системного администратора (root) он меняется и в Moodle (имя администратора '''admin''') (хук {{path|/usr/lib/alterator/hooks/root.d/installed-db}}). То есть при установке дистрибутива ALT Linux с Moodle (например, Информика 6.0 Школьный Сервер) можно сразу зайти под администратором: | ||
<pre>Адрес: https://<имя сервера>/moodle/ | <pre>Адрес: https://<имя сервера>/moodle/ | ||
Строка 45: | Строка 48: | ||
Пароль: такой же, как указали при установке для системного администратора</pre> | Пароль: такой же, как указали при установке для системного администратора</pre> | ||
=== Аутентификация в ALT-домене === | |||
При использовании [[Домен|ALT-домена]] Moodle настраивается для аутентификации через LDAP (принимает пользователей, заведённых в домене) (хук {{path|/etc/hooks/hostname.d/94-moodle-ldap}}). | При использовании [[Домен|ALT-домена]] Moodle настраивается для аутентификации через LDAP (принимает пользователей, заведённых в домене) (хук {{path|/etc/hooks/hostname.d/94-moodle-ldap}}). | ||
=== | Фактически после создания домена в файле {{path|/etc/sysconfig/mt-plugins}} должны быть указаны два параметры: | ||
<source lang="PHP"><?php | |||
$default_plugins_params = array( | |||
'auth_plugin_ldap' => array( | |||
'host_url' => 'ldap://localhost', | |||
'contexts' => 'ou=People,<DN домена>', | |||
...</source> | |||
В командной строке они прописываются так: | |||
<source lang="Bash">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'</source> | |||
К сожалению, contexts может не прописываться в старых версиях пакета {{pkg|installed-db-office-server}}. Добавьте его вручную, как показано выше. | |||
{{todo|И это тоже не работает...}} | |||
=== Coderunner === | |||
Для использования плагина Coderunner необходимо установить пакет {{pkg|moodle-qtype_coderunner}} и выполнить под root: | |||
<source lang="text" highlight="1"># control sudo public</source> | |||
== Решение проблем == | |||
=== Запуск инсталлятора === | |||
Для запуска установщика нужно зайти на 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'); | |||
Жмем '''Продолжить''' | |||
=== Hostname === | |||
По умолчанию Moodle определяет локальный адрес хоста и требует, чтобы заходили по полному имени. Если имя хоста на сервере при установке полноценное не задано, то к Moodle можно обратиться из графической среды самого сервера (зайти обычным пользователем в консоли и запустить | |||
startx | |||
Затем в Firefox зайти на страницу <tt><nowiki>https://localhost.localdomain/moodle</nowiki></tt>. | |||
Пользователь-администратор: admin, пароль такой же, как задавали у администратора во время установки. Заполняем поля со звёздочкой и применяем изменения. | |||
Дальше меняем имя хоста. Это делается в двух местах: | |||
1. в базе: открываем в браузере страницу <tt><nowiki>https://localhost.localdomain/moodle/admin/tool/replace/</nowiki></tt> | |||
* В первом поле указываем {{prg|localhost.localdomain}} | |||
* Во втором поле — имя хоста, видимое из нужной сети (локальной или глобальной) | |||
* Устанавливаем флажок «I understand the risks of this operation» | |||
* Нажимаем кнопку «Yes, do it now» | |||
2. замена в конфигурационном файле. В консоли сервера под root: | |||
subst 's/localhost.localdomain/<имя хоста>/' /var/www/webapps/moodle/config.php | |||
Теперь можно попробовать зайти под нормальным именем. | |||
== Ссылки == | == Ссылки == | ||
* [http://docs.altlinux.org/archive/p5/school-server/#_moodle Обучающая среда Moodle в Альт Линукс 5.0 Школьный Сервер] | * [http://docs.altlinux.org/archive/p5/school-server/#_moodle Обучающая среда Moodle в Альт Линукс 5.0 Школьный Сервер] | ||
Строка 57: | Строка 119: | ||
[[Категория:Moodle]] | [[Категория:Moodle]] | ||
[[Категория:Web]] | [[Категория:Web]] | ||
[[Категория:Sisyphus]] | [[Категория:Sisyphus]] | ||
[[Категория:Admin]] | |||
{{Category navigation|title=Системному администратору|category=Admin|sortkey={{SUBPAGENAME}}}} |
Текущая версия от 13:08, 11 ноября 2021
Задача
Установить 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. Добавьте его вручную, как показано выше.
Coderunner
Для использования плагина Coderunner необходимо установить пакет moodle-qtype_coderunner и выполнить под root:
# control sudo public
Решение проблем
Запуск инсталлятора
Для запуска установщика нужно зайти на 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');
Жмем Продолжить
Hostname
По умолчанию Moodle определяет локальный адрес хоста и требует, чтобы заходили по полному имени. Если имя хоста на сервере при установке полноценное не задано, то к Moodle можно обратиться из графической среды самого сервера (зайти обычным пользователем в консоли и запустить
startx
Затем в Firefox зайти на страницу https://localhost.localdomain/moodle.
Пользователь-администратор: admin, пароль такой же, как задавали у администратора во время установки. Заполняем поля со звёздочкой и применяем изменения.
Дальше меняем имя хоста. Это делается в двух местах:
1. в базе: открываем в браузере страницу https://localhost.localdomain/moodle/admin/tool/replace/
- В первом поле указываем localhost.localdomain
- Во втором поле — имя хоста, видимое из нужной сети (локальной или глобальной)
- Устанавливаем флажок «I understand the risks of this operation»
- Нажимаем кнопку «Yes, do it now»
2. замена в конфигурационном файле. В консоли сервера под root:
subst 's/localhost.localdomain/<имя хоста>/' /var/www/webapps/moodle/config.php
Теперь можно попробовать зайти под нормальным именем.
Ссылки