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. При необходимости:

  1. Создать файл /var/www/moodle/robots.txt в контейнере moodle
  2. Пример для разрешения индексации страниц курсов, но запрета административных разделов:
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. Связанные документы