Вход
Русский
USD
Цены в иностранной валюте приведены информационно

Установка Moodle на сервер Ubunty 16.04

Как самому установить и настроить Moodle?

Moodle является достаточно популярной системой для контроля обучения (LMS). Сервис позволяет делать обучающие сайты вроде материалов для чтения, онлайн-курсов, форумов. Платформа имеет большое количество возможностей для эффективного образования в группах от нескольких человек до сотен тысяч учащихся. Приложение также позволяет разделять студентов по ролям и предоставлять им разный уровень доступа к учебным материалам.

В этой статье мы покажем вам как поставить Moodle на сервер Ubuntu версии 16.04, а также настроить зависимости, определиться с темой и сделать первый курс. Потребуется машина с объемом оперативной памяти минимум 512 Мб, но желательно 1 Гб или более. Приложению потребуется около 200 Мб, плюс нужен дополнительный объем для контента сайта. Заранее создайте пользователя, у которого будет доступ к sudo. Кроме того, необходимо настроить брандмауэр, а также инсталлировать стек LAMP. Не забудьте записать root-пароль от MySQL.

1. Начать нужно с установки Moodle и необходимых зависимостей

Для корректной работы сервиса потребуется дополнительное ПО вроде библиотек графики или проверки орфографии. По своему принципу Moodle – это PHP-приложение, поэтому оно зависит от определенных библиотек на PHP. Сначала нам нужно поставить зависимости, а потом и Moodle. В первую очередь требуется обновить индекс пакетов:

sudo apt-get update

Инсталлируйте зависимости с помощью:

sudo apt-get install aspell graphviz php7.0-curl php7.0-gd php7.0-intl php7.0-ldap php7.0-mysql php7.0-pspell php7.0-xml php7.0-xmlrpc php7.0-zip

Теперь перезапустите веб-сервер Apache для загрузки новых модулей:

sudo systemctl restart apache2

Пришло время загрузки и установки Moodle. Используйте curl чтобы загрузить пакеты с самой последней стабильной версией приложения с официального сервера. Поставить их будет нужно в файл moodle.tgz. С помощью флага -L включается поддержка редиректа:

curl -L https://download.moodle.org/download.php/direct/stable32/moodle-latest-32.tgz > moodle.tgz

Теперь нужно распаковать архив и перенести все файлы в папку document root на веб-сервере:

sudo tar -xvzf moodle.tgz -C /var/www/html

Вам нужно убедиться в том, что папка с moodle перемещена в document root. Для этого нужно набрать:

ls /var/www/html
index.html  moodle

Проверьте содержимое папки moodle:

ls /var/www/html/moodle

На экране вы увидите список файлов сервиса:

admin           composer.json     grade          message                    README.txt
auth            composer.lock     group          mnet                       report
availability    config-dist.php   Gruntfile.js   mod                        repository
backup          config.php        help_ajax.php  my                         rss
badges          CONTRIBUTING.txt  help.php       notes                      search
behat.yml.dist  COPYING.txt       index.php      npm-shrinkwrap.json        tag
blocks          course            install        package.json               tags.txt
blog            dataformat        install.php    phpunit.xml.dist           theme
brokenfile.php  draftfile.php     INSTALL.txt    pix                        TRADEMARK.txt
cache           enrol             iplookup       plagiarism                 user
calendar        error             lang           pluginfile.php             userpix
cohort          file.php          lib            portfolio                  version.php
comment         files             local          PULL_REQUEST_TEMPLATE.txt  webservice
competency      filter            login          question
completion      githash.php       media          rating

Следующий шаг — это создание папки, в которой приложение Moodle будет хранить все обучающие файлы, располагающиеся вне базы данных сервера. Каталог должен располагаться вне корневой папки сервера, для того, чтобы из браузера к нему нельзя было получить доступ напрямую:

sudo mkdir /var/moodledata

Учтите, что пользователю сервера www-data нужно предоставить доступ к папке:

sudo chown -R www-data /var/moodledata

Теперь дайте владельцу полные права доступа к каталогу:

sudo chmod -R 0770 /var/moodledata

2. Как настроить базу данных для Moodle

Самое время приступить к созданию базы данных MySQL. В ней сервис Moodle сможет хранить информацию, а также пользователя для этой БД. Внесем поправки в конфигурацию MySQL для настройки поддержки Moodle. Вам нужно открыть файл:

sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf

В раздел Basic Settings придется дописать недостающие значения:

…
[mysqld]
#
# * Basic Settings
#
user            = mysql
pid-file        = /var/run/mysqld/mysqld.pid
socket          = /var/run/mysqld/mysqld.sock
port            = 3306
basedir         = /usr
datadir         = /var/lib/mysql
tmpdir          = /tmp
lc-messages-dir = /usr/share/mysql
skip-external-locking
default_storage_engine = innodb
innodb_file_per_table = 1
innodb_file_format = Barracuda
## Instead of skip-networking the default is now to listen only on
# localhost which is more compatible and is not less secure.
...

Изменения нужно сохранить, после чего закройте файл. Теперь потребуется перезапуск MySQL для обновления настроек:

sudo systemctl restart mysql

Теперь создадим базу данных для приложения Moodle. Для этого потребуется запуск командной строки MySQL. Наберите:

mysql -u root -p

Вы увидите запрос root-пароля MySQL. Введите его. На экране высветится командная строка с надписью:

mysql>

Для создания базы данных нужно набрать в консоли:

CREATE DATABASE moodle DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;

Теперь предстоит сделать пользователя, чтобы он взаимодействовал с базой данных Moodle:

create user 'moodler'@'localhost' IDENTIFIED BY 'moodlerpassword';

Имейте ввиду, что вместо слова moodler нужно указать имя пользователя базы данных, а пароль — вместо moodlerpassword. Новому пользователю нужно передать права на внесение изменений в БД, для корректировки привилегий и создания таблиц:

GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,CREATE TEMPORARY TABLES,DROP,INDEX,ALTER ON moodle.* TO 'moodler'@'localhost' IDENTIFIED BY 'moodlerpassword';

Вот и все, командную строку MySQL можно закрывать:

quit;

3. Как настроить Moodle в браузере?

Это необходимо чтобы завершить настройку сервиса Moodle. Откройте ваш сайт в браузере и укажите дополнительные параметры конфигурации. Чтобы сервер мог сохранить изменения потребуется временно заменить права доступа к главному каталогу Moodle. Помните, что, написав следующую команду, вы дадите доступ любому пользователю к корневой папке. Если это нежелательно, права менять не стоит. Вы сможете вручную внести изменения в файл конфигурации.

Если временные изменения прав все-таки требуются, то не забудьте заблокировать доступ обратно после настройки. Наберите:

sudo chmod -R 777 /var/www/html/moodle

Перейдите по ссылке открыв ваш браузер:

http://your_server_ip/moodle

Вы увидите страницу установки на дисплее:

Installation
Choose a language
Please choose a language for the installation. […]

Для настройки Moodle нужно выполнить некоторое количество действий:

1) Укажите язык инсталляции, после чего нажмите Next;

2) В Data Directory задайте папку /var/moodledata, после чего нажмите Next;

3) Выберите Improved MySQL (native mysqli) на странице Choose Data Driver и продолжите установку;

4) Теперь требуется указать пароль и имя пользователя базы данных MySQL для Moodle в разделе Database settings. Другие поля вы можете оставить по умолчанию. И опять нажмите Next;

5) С лицензионным соглашением тоже нужно согласиться, нажав Continue;

6) Если возникнут проблемы и ошибки, о них покажет страница Server Checks. В случае правильной установки всех зависимостей и компонентов вы увидите надпись: «Your server environment meets all minimum requirements». Если все нормально, нажмите продолжить;

7) Приложение поставит некоторое количество дополнительных приложений. Если все пройдет нормально, вы увидите сообщение об успешной установке. После прокрутки до низа экрана нажмите Continue;

8) Теперь вы увидите пустую страницу. Она нужна для настройки учетки администратора Moodle. Имя нужно указать в поле Username, а пароль — в New password. Поле Choose an authentication method оставьте без изменений. Напишите также адрес почты и нажмите Update profile;

9) Заполните поля Short name for site и Full site name на странице Front Page Settings. Не забудьте также указать местоположение, а также разрешите самостоятельную регистрацию посетителей с помощью адреса электронной почты. После всего сохраните изменения.

Завершив все действия, вы увидите панель инструментов новой установки Moodle на экране для администраторской учетной записи. Теперь опять получится ограничить доступ к корневой папке Moodle. Вам нужно набрать в консоли:

sudo chmod -R 0755 /var/www/html/moodle

У Moodle есть такая особенность: приложение создает файлы в каталоге /var/moodledata, менять которые может любой пользователь. Для повышения безопасности требуется поменять стандартные права доступа к файлам. Сначала откройте конфигурацию:

sudo nano /var/www/html/moodle/config.php

Внутри нужно найти строчку:

$CFG->directorypermissions = 0777;

И заменить последнюю цифру, чтобы получилось вот такое:

$CFG->directorypermissions = 0770;

Теперь сохраните изменения и закройте файл. Теперь мы изменим права доступа в папке /var/moodledata ведь ранее в ней были созданы несколько файлов с открытым доступом. Наберите:

sudo chmod -R 0770 /var/moodledata

4. Пользовательская настройка приложения, а также создание первого курса

Мы дошли до того, что уже можно регистрировать свой ресурс Moodle. Хорошо то, что вы будете своевременно уведомлены о новых релизах сервиса или его уязвимостях, благодаря добавления в список рассылок. Для регистрации нужно кликнуть по Site Administration где нажать кнопку Registration. После этого заполните форму регистрации на сайте. У вас также получится опубликовать свой ресурс Moodle, чтобы его могли скачать другие пользователи.

Вы также можете изменить тему сайта с помощью пункта Change Theme. Вы увидите на экране все доступные варианты. Когда выберите понравившуюся тему, нажмите кнопку Use theme рядов с названием для ее установки. Для разных устройств, вроде телефонов и планшетов можно поставить выбрать разные варианты.

Теперь мы с вами попробуем сделать первый курс на Moodle. Используя навигационное меню, выберите Site home, а потом Add a new course. Вы увидите форму на дисплее, в которую придется указать название курса, даты, категории. Кроме того, укажите имя, краткое имя, описание и прочую полезную информацию. После чего сохраните изменения, нажав клавишу Save and display. Вот и все, ваш первый курс готов. Теперь добавляйте уроки или занятия с помощью интерфейса сервиса.

Убедитесь, что установка Moodle готова к производству, прежде чем позволите другим пользователям подписаться на новый курс. Создайте сертификат TSL/SSL для сервера Apache, чтобы трафик между клиентом и сервером надежно шифровался. Кроме того, рекомендуем настроить резервное копирование каталога /var/moodledata и БД MySQL.

Опубликовано: Май 11, 2017