Меню Рубрики

Moodle установка и настройка windows

Запускаем сервер дистанционного обучения на Moodle

Теперь статьи можно слушать:

Мир движется в сторону дистанционных технологий обучения, а прошедшая самоизоляция только ускорила этот процесс. Оказалось, что многие школы не только не готовы, но и очень далеки от понимания, как должен быть построен процесс обучения.

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

Чтобы развернуть такую систему на собственном сервере, понадобится внешний IP-адрес. Почему на собственном? Сейчас поясню.

Почему мы используем собственный сервер

В нашей школе дистанционное обучение проводится с 2014 года. В тот год первые две недели царил «полнейший аврал», но сдача экзаменов среднего образования прошла без каких-либо эксцессов. Даже был проведен виртуальный выпускной.

К концу учебного года, при 1500 студентов, система стала занимать на диске более 600 Гб. Плюс место для резервных копий. Для резервных копий был выделен внешний жесткий диск. Как понимаете, при таком объеме дискового пространства стоимость выделенного сервера становится недоступной для бюджета учебного заведения. Потому и приходится создавать и обслуживать собственный сервер.

В сети огромное количество мануалов по развертыванию Moodle, но практически все они ориентированы на людей, знающих командную строку. А во многих (особенно небольших) школах, таких специалистов нет. Эта обязанность обычно ложится на учителей.

Этим материалом я постараюсь облегчить процесс установки Moodle. Совсем без командной строки, конечно, не обойтись, но я попробую сделать этот процесс максимально простым и понятным.

Выбираем и регистрируем домен

Стоимость доменного имени составляет около 200 рублей в год. Можно, конечно, обойтись без доменного имени, но тогда на сервер придется заходить по IP-адресу, который не каждый запомнит.

Пример регистрации домена буду показывать на Timeweb, у других регистраторов действия схожи.

Открываем панель управления хостингом, переходим в раздел «Домены и поддомены», кликаем на символ шестеренки и выбираем пункт «Настройки DNS». В поле «А» указываем IP-адрес, выданный вашим провайдером.

В настройках DNS также есть поле «AAAA», это IPv6-адрес. В примере он удален, поскольку не поддерживался нашим провайдером, но именно с IPv6 адресов шло большинство вредоносных запросов. Пока прописываются DNS, переходим к установке сервера.

Создаем сервер

Для начала собираем сам сервер. Минимальные требования можно посмотреть на официальном сайте Moodle.

На нашем сервере используется следующая конфигурация, и этого хватает с лихвой:

  • Процессор – AMD A8-9600 RADEON R7,
  • Оперативная память – 16 Гб,
  • Жесткий диск – 1 Тб.

Плюс внешний жесткий диск такого же объема, на котором по расписанию создается полная копия образа в архиве, чтобы в случае форс-мажора максимально быстро восстановить систему. Диски самые обычные, не SSD, поскольку бюджет любого муниципального учебного заведения весьма ограничен. Ширина канала — 50 Мбит.

Даже когда сайт достигал пика посещений, а это примерно 400 человек онлайн, потребление ресурсов не превышало 50 процентов. В каждом конкретном случае показатели могут различаться. Поэтому, когда собираете сервер, предусмотрите возможность апгрейда.

Ставим операционную систему

Мне больше нравится Debian, но если вы склоняетесь к Ubuntu, можете поставить ее. Рассмотрим оба варианта, ибо разница между ними минимальна. Остальные OS мы рассматривать не будем. На Windows резко возрастают требования к ресурсам, а стоимость лицензии весьма ощутима.

Скачиваем образ операционной системы с официального сайта. Если выбрали Debian, то загружаем минимальный образ, все остальные пакеты будут загружены в процессе установки. Если душа просит Ubuntu, то скачиваем последнюю версию. Берем обычную версию, никаких «Server edition».

Далее через Rufus создаем загрузочный USB и ставим систему на сервер.

Если используем Debian, то устанавливаем систему с минимального установочного образа. При выборе пакетов выбираем установку SSH и стандартные системные утилиты.

Если используем Ubuntu, загружаем и инсталлируем SSH командой:

Справка. SSH – это сетевой протокол, позволяющий удаленно работать на компьютере через командную оболочку.

Устанавливаем веб-сервер

Для работы Moodle нам нужен веб-сервер, а именно:

  • Apache – сам сервер,
  • MySQL – система управления базами данных,
  • PHP – язык, на котором написан Moodle.

Человек, знакомый с Linux, все поставит из терминала, но речь не о профи, а о тех, кого пугают строки Linux и сама командная строка. А деваться некуда, работа должна быть сделана. Поэтому предложу длинный, но более понятный путь.

Установка Webmin

Справка. Webmin – это оболочка, которая позволяет через веб-интерфейс (т.е. через обычный браузер) управлять вашим сервером. Это и файловый менеджер, и инструмент для настройки автоматического резервного копирования или создания/удаления баз данных.

Приготовьтесь, сейчас будет самое сложное. Если вы установите Webmin, то большая часть пути уже позади.

Скачиваем и запускаем Putty, в окне host вводим IP-адрес или домен вашего сервера. В открывшемся окне вводим логин и пароль, которые мы указали при установке сервера.

Чтобы не набирать sudo в начале каждой команды, пишем:

Снова вводим пароль.

Обновляем операционную систему:

Теперь нам нужно добавить репозиторий для установки Webmin.

Справка. Репозиторий – это хранилище пакетов для установки. В нашем случае мы подключаем репозиторий Webmin.

Текст придется набирать вручную.

И добавляем строку:

Перемещение курсора делается стрелками на клавиатуре.

Выходим из редактора, нажав Ctrl+X. Подтверждаем изменение файла и нажимаем Enter.

Чтобы наша операционная система доверяла новому репозиторию, добавляем ключи:

Если на этом этапе возникает ошибка, значит, вы неверно ввели какие-то команды. Откройте заново sources.list и исправьте ошибку.

Ставим Webmin:

Через несколько минут мы увидим сообщение

Webmin установлен, теперь можно подключиться к серверу через веб-интерфейс.

В браузере набираем https://имя_сайта:10000. Появится предупреждение о сертификате, игнорируем его и переходим к авторизации.

Если установлен Debian, логин будет root. Если Ubuntu, то вводите логин, который вы задали во время установки.

Устанавливаем Apache и MySQL

Открываем раздел «Неиспользуемые модули», выбираем «Веб-сервер Apache» и нажимаем «Установить». Точно так же устанавливаем «Сервер баз данных MySQL».

Кликаем на «Обновить модули» и в разделе «Службы» видим только что установленные компоненты.

Устанавливаем PHP

Осталось установить PHP. Снова открываем Putty (если закончилась сессия), заново авторизуемся под суперпользователем (root) и вводим команду:

Будет выведен список пакетов для установки. После подтверждения начнется установка.

На момент написания статьи по умолчанию устанавливается версия 7.3 или 7.4. Любая из версий нас полностью устраивает.

Ставим остальные пакеты, необходимые для запуска Moodle (пример на версии 7.3):

Если у вас установлена другая версия PHP, то в команде установки ее необходимо изменить.

Устанавливаем Moodle

Загружаем последнюю версию с официального сайта.

Рекомендую выбрать расширенную версию, которая оканчивается на +. Далее загружаем через файловый менеджер файлы в корневую директорию сайта. У нас эта директория var www.

Создаем базу данных и, открыв в браузере адрес нашего сайта, приступаем к установке.

При установке Moodle будет запущен мастер проверки. Наиболее типичные ошибки на этом этапе:

  • Не удается создать каталог moodledata. В этом случае создаем каталог вручную, затем в файловом менеджере кликаем на него правой клавишей, выбираем «Change permissions» и устанавливаем права для чтения 0777.
  • Не удается подключиться к базе данных. Открываем «Службы» – «MySQL» – «Создание нового пользователя». Предоставляем ему все права на созданную базу.
  • Не установлены библиотеки PHP. Открываем в файловом менеджере etc/php7.3/apache2/php.ini. Раскомментируем нужные строки. Для вступления изменений нужно перезапустить сервер Apache.

Что осталось за бортом?

А там осталось многое. Как внедрить в Moodle видеоконференцию Zoom или BigBlueButton. Как установить сертификат SSL. Как для обеспечения безопасности сменить порт Webmin. Как запустить резервное копирование…

Моя основная задача – подтолкнуть к созданию собственного сервера, на котором вы сможете создавать курсы, соответствующие вашему учебному плану и программе обучения.

Невозможно все охватить в рамках одного материала. Если будут вопросы, постараюсь ответить. Только сразу хочу отметить, что созданием и ведением курсов я не занимаюсь.

Источник

Moodle 3 -установка и первичная настройка

Сегодня мы разберемся с установкой и первичной настройкой системы дистанционного обучения Moodle 3.

Вещь чрезвычайно удобная и полезная. Во первых предоставляет удобный веб-интерфейс для работы, а во вторых снабжена громадным количеством инструментов для организации on-line и off-line обучения.

Перед установкой нужно проверить соответствие системным требованиям нашего сервера:

Место на диске: — минимум 160 Мб.

Оперативная память — не менее 256 Мб, рекомендуемый — 1 Гб.

Версии программного обеспечения — не ниже PHP 5.4.4, MySQL 5.5.31

  • создадим виртуальный хост — у меня это moodle.it-school.pw — здесь будут храниться основные скрипты системы;
  • в категории /var создадим каталог moodledata3 (наименование на ваше усмотрение, обычно это просто moodledata) — для хранения всех пользовательских файлов, курсов и т.д.
  • предоставим права на чтение и запись на /var/moodledata3 для пользователя webuser (пользователь, под которым мы работаем с сайтом).

2. При помощи phpMyadmin создадим пользователя и базу данных для moodle.it-school.pw (пусть это будет moodle_db).

3. С официального сайта https://moodle.org скачиваем дистрибутив moodle:

4. Распаковываем архив и копируем его содержимое в директорию /var/www/moodle.it-school.pw

5. Переходим по адресу http://moodle.it-school.pw и приступаем к установке Moodle:

6. Выбираем язык -в нашем случае Русский и нажимаем «Далее»:

7. Указываем адреса и путь к директории, где будут храниться данные. В нашем случае это /var/moodledata3:

8. Выбираем программное обеспечение сервера баз данных — MySQL:

9. Указываем параметры соединения с сервером баз данных, которые мы задавали ранее:

10. Соглашаемся с лицензией:

11. Система проверит параметры, необходимые для установки, в нашем случае все нормально:

12. Далее идет процесс установки, нажимаем далее приступаем к настройке параметров администратора системы. Указываем логин, пароль и все необходимые данные (они помечены *):

Важно!

13. Указываем название нашей системы и описание главной страницы:

14. Готово! В нашем распоряжении отличная система, для проведения тестирования, занятий on-line и off-line:


Источник

PROИТ

Office 365, AD, Active Directory, Sharepoint, C#, Powershell. Технические статьи и заметки.

Установка Moodle на Windows Server 2012 R2 и IIS

Дано: Windows Server 2012 R2 (x64) с установленным MS SQL Server
Задача: установить на него полноценный Moodle (PHP) с базой на MS SQL Server (или другой).

Речь идет именно об установке полноценного дистрибутива, а не урезанной версии для разработки.
Самое главное — подготовить сервер для работы PHP приложений, которым собственно и является Moodle. Для этого на сервере должна быть установлена роль веб-сервера (IIS), а также установлено PHP. Предполагается, что система управления базами данных уже имеется в системе или на другом сервере (MS SQL Server, MySQL или другая. В этой статье я буду предполагать использование MSSQL).

1. Установка роли «Веб-сервер» (IIS 8.5):

Открываем интерфейс добавления ролей в системе и в мастере указываем роль Web Server (IIS):

Далее выбираем компоненты (features) — .Net Framework:

Продолжение: (если нужна аутентификация при помощи AD (Active Directory, LDAP) выбираем соответствующие компоненты) — AD DS Tools другие, как показано на рисунке:

Далее в роли Веб-сервера (IIS) выбираем также нужные компоненты:

Особенно обращаем внимание на то, что выбран CGI (он необходим для работы с PHP).

Устанавливаем все выбранные компоненты.

Чтобы проверить корректность установки IIS, в браузере заходим на localhost и видим приветственное окно IIS:

2. Теперь необходимо установить PHP.

Самый простой путь — сделать это через Web Platform Installer. В IIS — переходим по ссылке Get New Web Platform Installer. После его установки ищем PHP и PHP Manager для IIS, устанавливаем их. Рекомендую именно этот способ.

Однако можно сделать такую установку вручную. Для этого делаем следующее:

На странице Downloads сайта windows.php.net скачиваем одну из последних версий PHP.
Для работы IIS с PHP как CGI-приложением нужно брать версию файла инсталлятора вида x86 Non Thread Safe.

Распаковываем в какую-либо папку (это не временная папка, запуск PHP будет из нее), например, C:\Program Files (x86)\PHP\v5.6

Далее необходимо установить PHP Manager для IIS. Скачиваем его с сайта phpmanager.codeplex.com и устанавливаем.

Далее после установки PHP и PHP Manager (или одновременно с ними) также через Web Platform Installer устанавливаем:
Microsoft Driver For PHP for SQL Server in IIS (если нужна будет данная СУБД)
Windows Cache Extension for PHP (расширение для ускорения работы PHP скриптов)

После установки вышеуказанных компонентов, переходим в IIS и открываем PHP Manager:

Если есть ссылка View recommendations, то переходим по ней.

Соглашаемся с предлагаемыми рекомендациями (Default document, monitorChangesTo):

После этого переходим по ссылке «enable or disable extensions» («включение или выключение расширений»)

Включаем (Enable) следующие расширения php_intl.dllphp_ldap.dll, если требуется аутентификация через LDAP).

Теперь попробуем протестировать работу PHP на нашем сервере: для этого создайте в IIS сайт (например, testphp, см. скрин из IIS выше). В папке сайта создадим файл index.php со следующим содержимым:

Теперь можно запускать тестовый сайт. Если всё настроено правильно, будет отображена версия PHP и другая информация.

Возможна ошибка:
HTTP Error 500.0 — Internal Server Error
C:\Program Files (x86)\PHP\v5.6\php-cgi.exe — The FastCGI process exited unexpectedly

Причины ошибки могут быть разные. Как вариант, если запуск осуществляется на 64 битной системе, то необходимо установить Visual C++ Redistributable (можно скачать с сайта Microsoft):

Тестовый файл должен выдать информацию о PHP:

3. Продолжаем настраивать PHP.

В свойствах FastCGI (FastCGI Settings) у нужной версии приложения php-cgi.exe меняем параметр Activity TimeOut на 6000 или больше (это время, необходимое на выполнение скрипта, которое рекомендуется увеличить, т.к. при операциях в Moodle, требующих длительных обработок, может случиться таймаут):

Далее открываем файл php.ini (например, через PHP Manager) и раскомментируем строки:
cgi.force_redirect = 0
cgi.fix_pathinfo=1
fastcgi.impersonate = 1

Если планируется синхронизация пользователей с каталогами Active Directory (AD), то дополнительно изменяем параметр memory_limit: вместо 128, указываем число побольше, например:
memory_limit = 768M
Если этого не сделать, то при количестве пользователей более 7 тысяч может перестать работать синхронизация (с LDAP).

4. Конфигурируем MIME Types в IIS

В IIS добавляем MIME Type со следующими параметрами:

File name extension: .php
MIME type: text/html

5. Локальная настройка домена

Т.к. Moodle рекомендуется запускать и настраивать сразу под нужный домен, то пропишем в специальном файле hosts необходимый домен и привяжем его к IP, чтобы иметь возможность запускать Moodle-проект локально, но под правильным доменом.

Напоминаю, что файл hosts находится по следующему пути:
C:\Windows\System32\drivers\etc\hosts

Открываем его и под всеми комментариями добавляем: IP-адрес + пробел + имя нужного домена
Примерное содержимое файла:

6. Скачивание и установка дистрибутива Moodle.

Заходим на официальный сайт системы и скачиваем архив последней версии Moodle (или той, которая Вам необходима). Ни в коем случае не скачивайте специальный дистрибутив для Windows (он только для локальной установки и разработки), ищем именно архив проекта Moodle:

Распаковываем всё содержимое скаченного архива в конечную папку (которую затем будет привязывать к IIS), например, в каталоге C:\inetpub\php\moodle (можно удалить лишние информационные файлы, вроде readme).
Также, для хранения данных системы Moodle необходимо создать дополнительную папку. Она должна быть не доступна из веб и располагаться вне основной директории (например, C:\inetpub\php\moodledata)

Для папки moodle задаем следующие права:
Пользователь IUSR — права на чтение по-умолчанию
Пользователь IIS_IUSRS — права на чтение по-умолчанию

Для папки moodledata задаем следующие права:
Пользователь IUSR — modify
Пользователь IIS_IUSRS — modify
Пользователь CronUser — modify (можно задать позже, см. статью Настройка запуска Cron Moodle в Windows Server 2012R2)

Если в дальнейшем нужно иметь возможность устанавливать, например, темы из веб-интерфейса, то необходимо дать право записи (modify) на папку тем (также можно сделать это для папок плагинов): moodle\theme, также для папки типов вопросов (чтобы устанавливать дополнительные типы): moodle\question\type

Далее создадим собственный конфигурационный файл (config.php): создайте копию файла config-dist.php (в корне папки Moodle) и переименуйте его в config.php.

Далее настройка Moodle на работу с базами на Microsoft SQL Server 2014
По вышеуказанной статье следуйте пунктам 1-3 (установка базы и подготовка сервера) и пункт 5 (задание правильных настроек подключения к базе в файле конфигурации Moodle). Там же будет указано какие параметры нужно внести в конфигурационный файл.

Также в конфигурационном файле config.php укажите настройки домена и путь к папке с данными:

$CFG->wwwroot = ‘http://mymoodlelms.ru’;
Указываем здесь URL адрес для доступа к Moodle (указываем либо домен, либо IP адрес)

$CFG->dataroot = ‘C:\\inetpub\\php\\moodledata’;
Указываем здесь расположение папки данных Moodle.

7. Создание сайта в IIS

Создаем в IIS сайт, указываем расположение папки Moodle. Настраиваем его на тот домен, который указали в конфигурационном файле Moodle:

8. Продолжение установки Moodle через браузер

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

На этом установка практически завершена.

Для корректной работы системы Moodle также необходимо настроить периодический запуск специального сервиса, расположенного в файле — cron.php (читайте статью Настройка запуска Cron Moodle в Windows Server 2012R2).

9. Настройка корректных путей

Далее для корректной работы путей системы создадим правило переадресации.

Для этого на уровне сайта в IIS переходим в настройки IIS-модуля URL Rewrite 2.0 (он должен быть предварительно установлен) и создадим следующее правило:

• Matches the Pattern — Regular Expressions — ^([^\?]+?\.php)(\/.+)$
• Action — Rewrite — \?file=
• Append query string — enabled
• Stop processing of subsequent rules — enabled

После создания этого правила, перейдите в настройки Moodle (Администрирование — Сервер — HTTP) и включите параметр «slash arguments»:

Без данной настройки некоторые темы будут работать некорректно, а также будут появляться трудно определяемые ошибки.

Также, если планируется синхронизация с AD, может потребоваться настройка LDAP (читайте в будущих статьях).

Итоги
Коротко о железе, на котором проходила подобная установка: Intel Xeon 2.13GHz, 16GB RAM, под PHP-папки использовался SSD диск. За полтора года боевого использования система Moodle в подобном исполнении показала себя достаточно хорошо.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

  • Monodevelop как установить на windows
  • Mono bluetooth router для windows phone
  • Monkrus windows 10 ltsb
  • Monkrus windows 7 dvd
  • Monitoring services windows zabbix