Moodle разработка плагинов
35 subscribers
31 photos
1 file
42 links
Полезные плагины для LMS Moodle, разработка плагинов: mod, enrol, auth, local, tool, report, theme и многое другое, связанное с Moodle
Download Telegram
October 7, 2024
October 7, 2024
October 11, 2024
October 15, 2024
October 23, 2024
November 18, 2024
November 18, 2024
December 11, 2024
December 19, 2024
December 28, 2024
Настройка кэширования Redis для Moodle на Windows может значительно улучшить производительность системы. Redis — это высокопроизводительная система кэширования, которая хорошо интегрируется с Moodle. Вот пошаговая инструкция по настройке Redis на Windows для Moodle:

---

### 1. Установка Redis на Windows
1. Скачайте Redis для Windows:
- Официальная версия Redis не поддерживает Windows, но вы можете использовать портированные версии, такие как [Microsoft Archive](https://github.com/microsoftarchive/redis) или [Memurai](https://www.memurai.com/) (платная версия для production).
- Скачайте архив с Redis и распакуйте его в удобное место, например, C:\Redis.

2. Запустите Redis:
- Откройте командную строку и перейдите в папку с Redis.
- Запустите Redis-сервер командой:
     redis-server.exe

- По умолчанию Redis будет работать на localhost и порту 6379.

3. Проверка работы Redis:
- Откройте новую командную строку и запустите Redis-клиент:
     redis-cli.exe

- Введите команду PING. Если Redis работает, вы получите ответ PONG.

---

### 2. Настройка Moodle для работы с Redis
1. Откройте конфигурационный файл Moodle:
- Найдите файл config.php в корневой папке Moodle.

2. Добавьте настройки Redis:
- Добавьте следующие строки в конфигурационный файл:
     $CFG->session_handler_class = '\core\session\redis';
$CFG->session_redis_host = '127.0.0.1'; // Адрес Redis-сервера
$CFG->session_redis_port = 6379; // Порт Redis
$CFG->session_redis_database = 0; // Номер базы данных Redis
$CFG->session_redis_prefix = 'mdl_'; // Префикс для ключей
$CFG->session_redis_acquire_lock_timeout = 120; // Тайм-аут блокировки
$CFG->session_redis_lock_expire = 7200; // Время жизни блокировки


3. Настройка кэширования через Redis:
- В админ-панели Moodle перейдите в раздел *Администрирование > Сервер > Кэширование*.
- Выберите Redis в качестве хранилища кэша.
- Укажите параметры подключения:
- Сервер: 127.0.0.1:6379
- База данных: 0
- Префикс: mdl_

---

### 3. Проверка работы Redis с Moodle
1. Очистите кэш Moodle:
- Перейдите в *Администрирование > Разработка > Очистить кэш*.
- Это заставит Moodle использовать Redis для кэширования.

2. Проверьте подключение:
- Используйте Redis-клиент для проверки данных:
     redis-cli.exe
KEYS mdl_*

- Если Redis настроен правильно, вы увидите ключи, созданные Moodle.

---

### 4. Дополнительные рекомендации
- Автозапуск Redis:
- Чтобы Redis запускался автоматически при старте системы, добавьте его в автозагрузку Windows или создайте задачу в планировщике задач.
- Мониторинг Redis:
- Используйте инструменты вроде redis-cli или графические интерфейсы (например, Redis Desktop Manager) для мониторинга состояния Redis.
- Резервное копирование:
- Регулярно создавайте резервные копии данных Redis, если они критически важны.

---

### 5. Устранение неполадок
- Ошибки подключения:
- Убедитесь, что Redis-сервер запущен и доступен по указанному адресу и порту.
- Проверьте, не блокирует ли брандмауэр Windows подключение к порту 6379.
- Ошибки кэширования:
- Убедитесь, что в конфигурации Moodle правильно указаны параметры Redis.
- Проверьте логи Moodle и Redis для выявления ошибок.

---

Следуя этим шагам, вы сможете успешно настроить Redis для кэширования в Moodle на Windows и значительно улучшить производительность системы.
January 28
CONTEXT_CACHE_MAX_SIZE — это параметр конфигурации Moodle, который управляет размером кэша контекстов. Контексты в Moodle представляют собой иерархическую структуру, которая определяет доступ к различным элементам системы, таким как курсы, модули, блоки и другие ресурсы. Кэширование контекстов позволяет ускорить выполнение запросов, связанных с проверкой прав доступа и другими операциями.
Читать далее: https://dzen.ru/a/Z6B3cqci-ESYr1qT?share_to=link
February 3
February 3
Плагин "Правила регистрации" расширяет контроль над регистрацией пользовательских аккаунтов в Moodle, добавляя различные антиспам-меры и альтернативы reCAPTCHA, чтобы предотвратить создание фальшивых аккаунтов автоматизированными ботами.
🚀 Список функций

Расширение формы регистрации с включением альтернатив reCAPTCHA, таких как ALTCHA, Cloudflare Turnstile и hCaptcha.
Запрет на создание аккаунтов с использованием временных адресов электронной почты.
Проверка, предупреждение и/или запрет регистрации, если пароль находится в базе данных Have I Been Pwned.
Проверка и запрет регистрации, если IP-адрес, адрес электронной почты или имя пользователя находятся в базе данных Stop Forum Spam.
Реализация других антиспам-мер, таких как добавление случайных скрытых "honeypot"-полей в форму регистрации и требование минимального времени для завершения регистрации.
Гибкие правила для разрешения или запрета регистрации аккаунтов в определённые временные интервалы.
Полное отключение регистрации пользователей одним кликом с отображением пользовательского сообщения на странице регистрации.

🧐 Как это работает

Плагин "Правила регистрации" позволяет настроить серию гибких правил для контроля регистрации пользователей на основе определённых условий. Каждое правило определяет проверку, которая выполняется в процессе регистрации.
Как оцениваются правила:

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

📝 Как использовать
Базовое использование

Установите плагин в Moodle.
Перейдите в "Администрирование сайта / Плагины / Инструменты администрирования / Правила регистрации / Экземпляры правил регистрации".
Выберите и настройте правила, которые хотите использовать, через выпадающие меню "Добавить правило" и/или "Добавить CAPTCHA".
Перейдите в "Администрирование сайта / Плагины / Инструменты администрирования / Правила регистрации / Настройки правил регистрации" и поставьте галочку "Включить".
На странице "Настройки правил регистрации" вы можете рассмотреть вариант включения опции "Только логирование" на начальном этапе. В этом случае плагин будет оценивать правила, но только записывать результаты, не запрещая регистрацию пользователей.

Принудительные экземпляры

Когда вы найдёте идеальную конфигурацию, её можно закрепить через файл config.php, чтобы её нельзя было изменить через интерфейс администратора. Это особенно полезно для развёртывания сайтов с предустановленной конфигурацией.

Для получения дополнительной информации нажмите кнопку "Просмотреть JSON экземпляров" на странице "Экземпляры правил регистрации".
Встроенные плагины CAPTCHA
ALTCHA challenge

ALTCHA — это бесплатная, открытая альтернатива reCAPTCHA, предназначенная для защиты вашего сайта от спама и злоупотреблений. Она уважает конфиденциальность пользователей, избегая использования файлов cookie, сбора отпечатков браузера или отслеживания, и полностью соответствует требованиям GDPR.

ALTCHA работает путём создания задачи, которую браузер пользователя должен решить, когда пользователь отмечает галочку "Я не робот" в форме регистрации. Это правило включает настройку сложности, которая определяет уровень вычислительных усилий, необходимых для решения задачи. Более высокая сложность повышает безопасность, но увеличивает время ожидания решения задачи.

Этот плагин не требует учётной записи третьей стороны и не взаимодействует с внешними системами.

https://moodle.org/plugins/tool_registrationrules
February 14
March 6
March 18
Secure PDF
Плагин Secure PDF позволяет вам загрузить PDF-файл в свой курс и предотвратить его скачивание студентами.
Пользователи получат изображение каждой страницы, а не сам PDF-файл.
Изображения защищены от "щелчка правой кнопкой мыши", чтобы предотвратить сохранение изображения.
Элемент курса считается выполненным только после того, как пользователь увидит все страницы документа.
Пользователи, обладающие навыками веб-разработки, смогут скачать изображения (одно за другим).
Установка
Пожалуйста, обратите внимание, что вам необходимо установить PHP-модуль, который не требуется самому Moodle.
Установите модуль php-imagick в свою систему.
(debian/ubuntu) apt-get install php-imagick
(Redhat/Centos) yum install php-imagick
Настройте imagemagick так, чтобы он разрешал чтение PDF-файлов, добавьте <policy domain="coder" rights="read" pattern="PDF"> в политику по адресу /etc/ImageMagick-6/policy.xml смотрите более подробную информацию здесь : https://stackoverflow.com/questions/52703123/override-default-imagemagick-policy-xml
Перезапустите php-fpm или ваш веб-сервер.
cd [moodle]/мод/
git clone https://github.com/yedidiaklein/moodle-mod_securepdf.git securepdf
Перейдите на страницу уведомлений moodle и установите плагин.

Как пользоваться
Добавьте модуль securepdf в свой курс.
Добавьте PDF-файл в модуль и просмотрите его.
Обратите внимание, что первый просмотр страницы будет медленным (20-25 секунд), затем она будет кэширована для других пользователей.
https://moodle.org/plugins/mod_securepdf
March 28
April 9
image_2025-04-25_10-25-43.png
13.2 KB
April 25