SEO и индексация страниц Moodle (lms.cdto.life)
Дата: 2026-02-13
Сайт: https://lms.cdto.life
1. Настройка индексации роботами
1.1 Параметры Moodle
Путь: Site administration → Security → Site security settings
| Параметр | Рекомендуемое значение | Описание |
|---|---|---|
| Allow indexing by search engines | Everywhere except login and signup pages | Разрешить индексацию страниц курсов, кроме формы входа и регистрации |
Варианты:
- Everywhere — индексировать всё (включая страницы входа)
- Everywhere except login and signup pages — рекомендуется
- Nowhere — запретить индексацию
1.2 robots.txt
Moodle по умолчанию не создаёт robots.txt. При необходимости:
- Создать файл
/var/www/moodle/robots.txtв контейнере moodle - Пример для разрешения индексации страниц курсов, но запрета административных разделов:
User-agent: *
Allow: /mod/page/
Allow: /course/view.php
Disallow: /admin/
Disallow: /login/
Disallow: /user/editadvanced.php
1.3 Meta-теги
- meta robots: Moodle выставляет автоматически по настройке «Allow indexing»
- meta description: для ресурса «Страница» — задаётся в поле «Описание» (intro) при добавлении. Рекомендуемая длина: 120–160 символов
- title: берётся из названия страницы. Рекомендуется включать ключевые фразы (например, «BigBlueButton», «Moodle»)
2. Проверка SEO страницы
2.1 Скрипт verify-moodle-page-seo.py
Проверяет ключевые фразы, заголовки (H1–H3), мета-теги и выводит рекомендации.
# С учётными данными из config/secrets или переменных окружения
python3 scripts/verify-moodle-page-seo.py https://lms.cdto.life/mod/page/view.php?id=6
# С явными учётными данными
python3 scripts/verify-moodle-page-seo.py URL --user=admin --password=XXX
# Без входа (только для публичных страниц)
python3 scripts/verify-moodle-page-seo.py URL --no-login
2.2 Зачисление администратора в курс
Если при проверке SEO открывается страница входа — администратор, вероятно, не зачислен в курс «Академия CDTO». Выполните:
./scripts/moodle-enroll-admin-in-academy.sh
Скрипт зачисляет пользователя admin в курс с shortname academy или akademiya-cdto (или первый не-сайт курс).
2.3 Порядок автоматического ввода учётных данных (без участия пользователя)
Скрипт получает логин и пароль в следующем порядке:
| № | Источник | Описание |
|---|---|---|
| 1 | --user и --password |
Аргументы командной строки |
| 2 | MOODLE_ADMIN_USER, MOODLE_ADMIN_PASSWORD |
Переменные окружения |
| 3 | config/secrets |
Строки MOODLE_ADMIN_USER=..., MOODLE_ADMIN_PASSWORD=... |
| 4 | lxc exec moodle -- cat /root/moodle_admin_credentials.txt |
Файл в контейнере (формат: username: password или Логин: admin / Пароль: xxx) |
Настройка: добавить в config/secrets:
MOODLE_ADMIN_USER=admin
MOODLE_ADMIN_PASSWORD=ваш_пароль
Либо обеспечить наличие /root/moodle_admin_credentials.txt в контейнере moodle.
3. Зачисление в курс перед проверкой SEO
Перед проверкой SEO страниц курса выполните (при необходимости):
./scripts/moodle-enroll-admin-in-academy.sh
4. Shortname курса для SEO
Рекомендуемый shortname курса «Академия CDTO»: akademiya-cdto — предпочтителен для русскоязычного поиска («академия CDTO»). Альтернатива: academy (универсальный).
# Установить shortname (по умолчанию akademiya-cdto)
lxc exec moodle -- sudo -u www-data php /tmp/moodle-set-academy-shortname.php akademiya-cdto
5. Ключевые фразы и заголовки для инструкции BBB→Moodle
Рекомендуемые ключевые фразы на странице:
- BigBlueButton
- Moodle
- school.cdto.life
- lms.cdto.life
- Shared Secret
- BigBlueButton BN
- веб-конференц
- подключен
Рекомендуемая структура заголовков (H1–H3):
- H1: Инструкция по подключению BigBlueButton к Moodle
- H2: Назначение, Требования, Шаг 1, Шаг 2, Шаг 3, Шаг 4
- H3: при необходимости — подразделы шагов
6. Отчёт о соответствии SEO
Отчёт о соответствии SEO страницы BBB-инструкции — текущее состояние vs ожидаемые заголовки и мета-теги.
7. Связанные документы
- Размещение материалов на Moodle Академия CDTO
- Инструкция по подключению BigBlueButton к Moodle
- moodle-first-login.md — первый вход, смена пароля