Админка MODX: вход, основные разделы и восстановление доступа

Вход и управление сайтом через административную панель MODX MODX Revo
По умолчанию админка MODX открывается по адресу сайта с добавлением /manager/, если каталог менеджера не переименован. Для входа нужны учетная запись MODX и права доступа к административной панели. Измененный адрес можно проверить в конфигурации, а при проблемах со входом нужно различать неверный пароль, блокировку пользователя и ошибки сервера.

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

Основной маршрут этого раздела подготовлен на MODX 2. Сохраняю также имеющиеся примеры интерфейса MODX 3: расположение меню отличается, но назначение основных разделов остается понятным.

К тексту есть видео с обзором административной панели. Оно дополняет инструкцию; порядок действий и оговорки по восстановлению доступа используйте из актуального текста.

Как зайти в админку MODX

В адресной строке браузера введите адрес сайта и добавьте /manager/. Например:

https://your-site.ru/manager/

Замените your-site.ru своим доменом. Если MODX установлена в подкаталоге, добавьте его в адрес, например https://your-site.ru/site/manager/.

  1. Откройте страницу входа.
  2. Введите имя пользователя и пароль, созданные при установке или выданные администратором сайта.
  3. Нажмите «Войти».

Вход в админку MODX

В MODX 3 оформление страницы входа отличается:

Вход в админку MODX 3

Логин и пароль MODX не обязательно совпадают с реквизитами хостинга или пользователя базы данных. Учетная запись для входа на публичную часть сайта также не обязательно имеет доступ к менеджеру.

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

Как узнать нестандартный адрес входа

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

  1. Откройте файловый менеджер хостинга или подключитесь по SFTP.
  2. Найдите каталог ядра и файл core/config/config.inc.php.
  3. Найдите переменные $modx_manager_url и $modx_manager_path.

Например:

$modx_manager_path = '/full/path/to/site/modx-myadmin/';
$modx_manager_url = '/modx-myadmin/';

Первое значение — путь к каталогу на сервере, второе — путь в URL. В таком примере форма входа открывается по адресу https://your-site.ru/modx-myadmin/.

Если сайт установлен в подкаталоге, значение URL может включать его, например /site/modx-myadmin/. Используйте фактическое значение конфигурации.

В MODX 2 ядро также могло быть перенесено или переименовано. Если стандартного core нет, проверьте путь MODX_CORE_PATH в файле config.core.php вашей установки.

Не публикуйте содержимое конфигурационного файла целиком: в нем находятся реквизиты базы данных и другие служебные сведения.

Обзор административной панели

После входа откроется панель управления. Ее вид зависит от версии MODX, прав пользователя, установленных дополнений и настроенных виджетов.

Главный экран админки MODX 2.8.x
Главный экран админки MODX 2.8.x
Главный экран админки MODX 3.0.x
Главный экран админки MODX 3.0.x

Ресурсы, элементы и файлы

Слева находится дерево с основными вкладками:

  • Ресурсы — страницы и другие ресурсы сайта. Здесь можно создавать разделы, открывать страницы для редактирования, менять их свойства и управлять публикацией.
  • Элементы — шаблоны, чанки, сниппеты, плагины и дополнительные поля TV. Они отвечают за оформление, вывод данных и логику.
  • Файлы — доступные пользователю файлы и каталоги в рамках настроенных источников медиа. Это не обязательно вся файловая система сервера.

Не путайте содержание страницы с кодом ее оформления. Основные связи разобраны в уроке «Как устроен MODX: ресурсы, шаблоны, чанки, сниппеты и файлы».

Основное меню

В MODX 2 основное меню расположено сверху. В показанном интерфейсе MODX 3 оно находится слева, рядом с деревом ресурсов. Названия и доступность отдельных пунктов могут отличаться в зависимости от прав и версии.

  • Поиск помогает найти ресурсы и элементы по доступным данным.
  • Содержимое — создание ресурса, переход на сайт, операции импорта, группы ресурсов и типы содержимого.
  • Медиа — работа с файлами и источниками медиа. Подробности есть в уроке об источниках файлов.
  • Пакеты — установка и управление дополнениями и поставщиками пакетов. Дополнение может включать разные элементы, а не только плагины. Смотрите инструкцию по дополнениям.
  • Управление — пользователи, очистка кеша, работа с блокировками, сеансами и отчетами.
  • Меню пользователя с логином или аватаром — профиль, сообщения и выход из системы.
  • Настройки, обозначенные шестеренкой, — системные настройки, настройка форм, панели управления, контексты, меню, контроль доступа, наборы параметров, лексиконы и пространства имен.
  • Помощь — ссылки на документацию и поддержку.

Настройка форм изменяет интерфейс редактирования для определенных условий и групп пользователей. Ее не нужно путать с созданием контактной формы на сайте.

Типы содержимого определяют MIME-тип и связанные параметры выдачи ресурса, в том числе суффикс. Это не просто список расширений загружаемых файлов.

Какие действия не стоит нажимать без необходимости

Очистка кеша, снятие блокировок и завершение сеансов решают разные задачи:

  • Очистить кеш — обновить кешированные данные. Это не универсальное исправление ошибок кода, базы или доступа.
  • Снять блокировки — освободить ресурсы, отмеченные как редактируемые другими пользователями. Не используйте это, не выяснив, работает ли сейчас другой редактор.
  • Перезагрузить права доступа — обновить данные, связанные с правами и политиками.
  • Завершить все сеансы — принудительно завершить сеансы пользователей. Это может прервать работу других участников.

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

Как сменить пароль в админке

Если вы уже вошли в систему и хотите сменить свой пароль, используйте профиль пользователя.

  1. Откройте меню с вашим логином или аватаром.
  2. Перейдите в «Профиль».
  3. Найдите раздел изменения пароля.
  4. Заполните требуемые поля и сохраните изменения.
  5. Проверьте вход с новым паролем.

Если интерфейс требует текущий пароль, введите его. Смена пароля одного пользователя не меняет пароли всех администраторов сайта.

Для изменения пароля другого пользователя нужны соответствующие права в разделе управления пользователями.

Как изменить адрес административной панели

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

Ниже пример переименования каталога в modx-myadmin. Перед работой сохраните файлы сайта и базу, запишите исходные пути и убедитесь, что сможете восстановить конфигурацию через файловый менеджер или SFTP.

Проверьте исходные пути

Откройте core/config/config.inc.php и найдите:

$modx_manager_path = '/full/path/to/site/manager/';
$modx_manager_url = '/manager/';

/full/path/to/site/ — обозначение фактического пути к вашей установке. Не вставляйте его буквально. На Windows путь может иметь другой вид, а для сайта в подкаталоге URL будет включать этот подкаталог.

Переименуйте каталог и измените конфигурацию

  1. Сохраните копию конфигурационного файла вне публично доступной папки.
  2. Если конфигурационный файл защищен от записи, временно разрешите необходимые изменения.
  3. Переименуйте фактический каталог manager в modx-myadmin.
  4. В конфигурации замените только имя каталога в соответствующих значениях.

Для приведенного примера получится:

$modx_manager_path = '/full/path/to/site/modx-myadmin/';
$modx_manager_url = '/modx-myadmin/';

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

Сохраните файл. Если доступ к админке временно потерян, очистите содержимое каталога кеша установленного ядра через файловый менеджер, предварительно сохранив нужные журналы для диагностики. Сам каталог core и конфигурацию не удаляйте.

Откройте https://your-site.ru/modx-myadmin/, войдите и проверьте загрузку интерфейса, сохранение тестового изменения и работу нужных дополнений. Верните защиту конфигурационного файла от записи.

В официальном руководстве MODX после изменения путей также рекомендуется повторно запустить setup для проверки конфигурации. Это выполняется как обслуживающая операция после резервного копирования, а не как «Новая установка» поверх рабочего сайта. После успешного завершения каталог setup снова удаляется.

Если новый адрес не работает, сначала проверьте совпадение путей, наличие каталога и правила веб-сервера. При необходимости верните исходное имя каталога и сохраненные значения конфигурации.

Поле path в таблице workspaces относится к расположению ядра. Менять его на путь менеджера при обычном переименовании manager не нужно.

Другие меры защиты разобраны в статье о безопасности MODX.

Что делать, если MODX не пускает в админку

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

Что происходит С чего начать
Форма входа не открывается, вместо нее главная или 404 Проверить домен, подкаталог установки, фактический адрес manager и правила веб-сервера
Форма открывается, но логин или пароль не принимаются Проверить раскладку, регистр, сохраненные реквизиты и восстановление пароля
Появляется сообщение о блокировке Проверить состояние пользователя и срок блокировки
После входа нет нужных разделов или появляется отказ в доступе Проверить группы, политики и доступ к контексту mgr
Белый экран или ошибка 500 Посмотреть журналы MODX и PHP, последние изменения и совместимость окружения
После входа снова открывается форма авторизации Проверить cookies и сеансы, единый домен и протокол, настройки сайта

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

Восстановление пароля по почте

На странице входа нажмите ссылку восстановления учетных данных. В зависимости от версии она может называться «Забыли свое имя пользователя?» или иначе.

Следуйте подсказкам и используйте почту, указанную в профиле нужного пользователя. Проверьте папку «Спам».

Если письмо не приходит, это еще не доказательство неверного адреса: возможны проблемы отправки почты, SMTP или доставки. На локальном сервере внешняя отправка может быть не настроена.

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

Аварийный сброс пароля через базу данных

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

Пароль в базе хранится не открытым текстом, а в виде хеша. Способ проверки определяется полем hash_class. Поэтому нельзя просто записать MD5 в password любого пользователя и ожидать, что вход восстановится.

Ниже два варианта: современный хеш для MODX 2.7/2.8 и короткий временный способ через MD5. Ни один из них не снимает блокировку и не добавляет права на административную панель.

Найдите нужную учетную запись

Откройте phpMyAdmin и выберите базу именно этого сайта. Имя базы и префикс таблиц можно проверить в core/config/config.inc.php: переменные $dbase и $table_prefix.

Найдите таблицу users с фактическим префиксом. В стандартном примере она называется modx_users.

таблица modx_users

По username найдите нужную учетную запись, запишите ее id и исходные значения password, hash_class, salt и cachepwd. Храните их только в защищенной резервной копии. Открывайте для изменения одну нужную строку.

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

Вариант 1. Сброс через bcrypt для MODX 2.7/2.8

В этих версиях доступен штатный класс hashing.modNative, который проверяет хеши, созданные нативным механизмом PHP. Для обычной установки это предпочтительнее перевода пароля на MD5.

Для MODX 3, старых веток и нестандартных сборок сначала проверьте соответствующий механизм и имя класса. Не переносите значение hash_class в неизвестную установку автоматически.

Подготовьте хеш нового пароля

Используйте доверенный компьютер с PHP. Не отправляйте настоящий пароль в онлайн-генератор.

Создайте файл make-password-hash.php вне каталогов сайтов со следующим содержимым:

<?php
if (PHP_SAPI !== 'cli') {
    http_response_code(403);
    exit;
}

fwrite(STDOUT, "Введите новый пароль: ");
$password = rtrim(fgets(STDIN), "\r\n");

if ($password === '' || strlen($password) > 72) {
    fwrite(STDERR, "Пароль должен быть непустым и не длиннее 72 байт.\n");
    exit(1);
}

echo password_hash($password, PASSWORD_BCRYPT), PHP_EOL;

Откройте терминал с доступным PHP, перейдите в каталог этого файла и выполните:

php make-password-hash.php

Введите новый уникальный пароль. В этом простом примере ввод отображается в терминале, поэтому выполняйте его в приватной сессии. Для bcrypt ограничение составляет 72 байта, не обязательно 72 символа.

Скопируйте целиком полученный хеш, включая начало $2y$. Сам пароль сохраните в защищенном хранилище. Скрипт не подключается к сайту и не меняет базу.

Сохраните хеш в учетной записи

В найденной строке users измените:

  • password — вставьте полученный bcrypt-хеш.
  • hash_class — укажите hashing.modNative.
  • salt — очистите значение; modNative не использует отдельную соль из этого поля.
  • cachepwd — очистите старое значение, связанное со сменой пароля.

Для password не выбирайте функцию MD5, SHA1 или другую обработку в phpMyAdmin. Сохраняем уже готовую строку хеша. Имя пользователя, активность, группы и права не меняйте без отдельной причины.

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

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

Вариант 2. Временный сброс через MD5

Этот способ можно использовать как аварийный, если в вашей версии MODX поддерживается класс hashing.modMD5. Он описан в официальной документации и разобран в материале на modx.pro.

В найденной строке пользователя:

  1. В поле password введите собственный уникальный временный пароль и выберите функцию MD5 для этого поля.
  2. В hash_class укажите hashing.modMD5.
  3. Очистите salt и cachepwd.
  4. Остальные поля оставьте без изменений и сохраните строку.

Если вместо открытого пароля вставляете уже рассчитанный MD5-хеш, функцию MD5 повторно не выбирайте. Иначе получится хеш от хеша.

Не используйте готовый пароль qwerty или его опубликованный хеш. Даже для временного входа задайте собственный пароль.

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

После входа верните современное хеширование

MD5 не подходит для постоянного хранения паролей. Не оставляйте учетную запись в этом состоянии после восстановления доступа.

Для MODX 2.7/2.8 выполните вариант 1 из предыдущего подраздела: создайте bcrypt-хеш нового постоянного пароля, сохраните его вместе с hashing.modNative и проверьте вход.

Если сменили пароль через профиль, все равно проверьте фактический hash_class. Одна смена текста пароля не гарантирует автоматического перехода с modMD5 на современный класс.

Для другой версии используйте предусмотренный ею механизм. Не назначайте случайное имя класса только ради исчезновения MD5 из таблицы.

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

Как разблокировать пользователя MODX

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

Если доступен другой администратор, сначала используйте интерфейс управления пользователями. Правка базы — аварийный способ для владельца сайта после резервного копирования.

  1. В таблице users найдите нужного пользователя и запишите его id.
  2. Откройте таблицу user_attributes с фактическим префиксом, например modx_user_attributes.
  3. Найдите строку, у которой internalKey совпадает с id этого пользователя.
  4. Проверьте blocked, blockeduntil и failedlogincount.

Разблокировка админки MODX Revo

Если подтверждено, что это ваша учетная запись и блокировка вызвана неудачными попытками входа, можно установить для этой строки:

  • blocked = 0 — снять постоянный флаг блокировки.
  • blockeduntil = 0 — снять временную блокировку.
  • failedlogincount = 0 — сбросить счетчик неудачных попыток.

Поле называется blocked, не bloked. Не применяйте изменения ко всем пользователям.

Отдельно проверьте active в users и возможное ограничение blockedafter в профиле. Не отменяйте административные ограничения доступа вслепую.

Сохраните изменения и снова проверьте вход. Разблокировка не меняет забытый пароль и не добавляет прав на административную панель.

Белый экран, пустые блоки и другие ошибки

При белом экране или ошибке 500 сначала посмотрите журнал MODX и журнал PHP на сервере. Стандартное расположение журнала MODX — core/cache/logs/error.log, если ядро и логирование не настроены иначе.

Сопоставьте время ошибки с последним действием: обновлением PHP, установкой дополнения, изменением путей или переносом сайта. Подробнее о журнале и каталогах — в материале об устройстве MODX.

Пустые блоки «Новости MODX» и «Уведомления безопасности MODX» сами по себе не означают, что админка сломана. Это внешние ленты, а не проверка безопасности вашего сайта. Если остальные разделы работают, их загрузку можно диагностировать отдельно.

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

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

Следующий шаг

Дальше разберем ресурсы MODX и их поля: создадим раздел и дочернюю страницу, заполним содержание, проверим публикацию и работу с деревом.

Вернуться к установке можно через инструкцию для хостинга или локальную установку. Общая последовательность находится в карте обучения MODX.

Установка MODX на компьютер
← Предыдущая статьяУстановка MODX локально (на компьютер): Open Server Panel и вариант с XAMPP
Следующая статья →Ресурсы MODX: страницы, поля, настройки и работа с деревом
Дерево ресурсов MODX, поля страницы и ее отображение на сайте
Поделиться с друзьями
Алексей

Веб-дизайнер и SEO оптимизатор. Занимаюсь созданием сайтов с 2010 года и их продвижение с 2012 года!

Оцените автора
( 8 оценок, среднее 4 из 5 )
Web-Revenue.ru

Комментарии закрыты.

  1. Max

    класс для хэширования (поле hash_class) нужно указывать: hashing.modMD5.