Бесплатно
Загрузите дополнение из админки вашего сайта.
Как загрузить?
Как загрузить?
Версия
2.4.0-rc
Дата выпуска
11.08.2026
Загрузки
0
Просмотры
24
mxBackup создаёт полноценные резервные копии сайта MODX: файлы, структуру и данные MySQL — в одном ZIP или tar.gz архиве. Содержимое ZIP можно защитить AES-256 паролем.
Для переноса сайта на стенд есть отдельный dev-профиль: сессии удаляются, а персональные данные MODX и miniShop2 заменяются стабильными тестовыми значениями. Если безопасную маскировку или шифрование применить нельзя, архив не создаётся.
- production- и обезличенные development-копии;
- AES-256 шифрование содержимого ZIP с проверкой результата;
- запуск из manager, CLI и cron;
- переносимые файловые профили и правила;
- include/exclude-правила для файлов и таблиц;
- собственные правила маскирования, включая JSON path;
- история запусков, manifest, checksum и retention;
- логирование через mxLogger со стандартным журналом MODX как fallback;
- preflight и восстановление файлов и базы данных с обязательным страховочным backup;
- блокировка параллельных запусков и атомарная публикация архива;
- email-отчёт и вложение небольших архивов.
Пакет подходит для аварийного резервирования и восстановления, подготовки безопасных копий для разработчиков и регулярных задач cron. Большие копии рекомендуется запускать через CLI.
mxBackup 2.4.0-rc (2026-08-11)
- CLI показывает ход работы. Backup и restore объявляют стадии («[3/5] Дамп базы»), считают таблицы, файлы, байты SQL и отправленные в S3 килобайты. Раньше прогон на большом сайте молчал минутами, и отличить работу от зависания было нечем.
- Индикация идёт в STDERR, поэтому JSON в STDOUT остаётся машиночитаемым, а конвейеры и парсеры вывода продолжают работать как прежде.
- Вне терминала (cron, лог, письмо) строка не перерисовывается: печатаются только начало и итог каждой стадии с длительностью — по ним видно, на чём именно оборвался неудачный прогон. Отключается флагом --no-progress.
- Страховочная копия внутри restore печатает свои стадии отдельной вложенной лентой с отступом, а не подмешивается к стадиям восстановления.
- Исправлено: ZIP-архив с записью по имени site (файл вместо каталога) ронял восстановление обращением к неопределённой переменной вместо понятной ошибки.
- Исправлено: восстановление падало с «MySQL server has gone away» на записи страховочной копии в историю. Пока распаковывался архив, сервер закрывал простаивающее соединение по wait_timeout, и первый же запрос после этого не проходил. Соединение теперь пингуется во время долгих стадий и поднимается заново, а обращения к истории запусков повторяются после переподключения. Внутри consistent snapshot переподключения нет: там обрыв прерывает дамп с явной ошибкой, чтобы архив не собрался из разных состояний базы.
- Функционально линия совпадает с 1.7.0-rc для MODX 2; общее ядро различается только номером версии в manifest.
mxBackup 2.3.0-rc (2026-08-11)
- Условие «Применять только при условии» теперь редактируется прямо в форме правила: пары «колонка строки — маска значения» задаются таблицей с редактированием по клику, строки добавляются и удаляются кнопками. Раньше условие можно было задать только правкой файла профиля, а форма его лишь сохраняла.
- Подписи и подсказки блока условий переписаны под смысл: колонка называется «Колонка строки», маска — «Значение подходит под маску», под таблицей приведены примеры на modx_system_settings (secret поймает paymentSecret, а !*_min_length оставит нетронутой настройку password_min_length). Пустая таблица прямо говорит, что правило применится ко всем строкам.
- Строка условия с незаполненной колонкой или пустой маской подсвечивается, и правило не сохраняется: раньше такая строка молча выпадала.
mxBackup 2.2.3-rc (2026-08-11)
- Обезличивание настроек добралось до пользовательских переопределений. В 2.2.2-rc правило для modx_user_settings было записано с опечаткой в имени таблицы, а modx_user_group_settings не упоминался вовсе: настройки, переопределённые у пользователя или у группы, уезжали в копию как есть. Имена сверены со схемой ядра MODX 2 и MODX 3 — они разнобойные (system_settings и user_settings во множественном числе, context_setting в единственном), и сравнение точное, поэтому лишняя буква означала не мягкое срабатывание, а полное отсутствие правила.
mxBackup 2.2.2-rc (2026-08-11)
- Обезличенная копия больше не увозит секреты из настроек MODX. Ключи платёжных шлюзов, пароль SMTP, токены рассылок и аналитики лежат в modx_system_settings вперемешку с безобидными настройками, и до сих пор уезжали в dev-копию как есть. Теперь значение стирается у настроек, чьё имя похоже на пароль, токен, secret, api_key, private_key, license_key, access_key, auth_key или заканчивается на _credentials; то же применяется к переопределениям в modx_context_setting и modx_user_setting. Остальная конфигурация остаётся, и сайт из копии поднимается.
- Настройки, лишь названные похоже, остаются рабочими: password_min_length, password_generated_length, allow_manager_login_forgot_password, token_ttl и прочие тайминги, лимиты и флаги не стираются — иначе копия поднималась бы с обнулённой политикой паролей.
- Правило маскирования умеет условие по соседним колонкам строки (ключ
whenв профиле):'when' => ['key' => ['*secret*']]вычистит колонкуvalueтолько у подходящих строк. Так закрываются таблицы вида «имя в одной колонке, значение в другой» — настройки, метаданные, key-value-справочники сторонних пакетов. Шаблон с!в начале — исключение:['*token*', '!*_ttl']заденет токены, но не тайминги. Условие задаётся в файле профиля; форма правил в manager его не редактирует, но при правке правила сохраняет. - Dry-run отличает условные колонки от безусловных: в отчёте они выведены отдельным списком conditional_columns, чтобы «здесь сотрут всё» не путалось с «сотрут у части строк».
- Функционально линия совпадает с 1.5.2-rc для MODX 2; общее ядро различается только номером версии в manifest.
mxBackup 2.2.1-rc (2026-08-10)
- В форме профиля появился собственный каталог архивов. Пустое поле наследует общий mxbackup.storage_path; разные профили теперь можно направить в разные локальные каталоги без ручной правки PHP-конфигурации.
- Функционально линия совпадает с 1.5.1-rc для MODX 2; общее ядро различается только номером версии в manifest.
mxBackup 2.2.0-rc (2026-08-10)
- tar.gz теперь собирается потоково за один проход без промежуточного несжатого TAR. На контрольном наборе 6652 файла / 208 МБ упаковались за 1,2 секунды вместо прежних 30+ минут.
- Перед запуском из manager пакет показывает количество и суммарный размер файлов, свободное место и предупреждает, если большую копию надёжнее запустить через CLI.
- Выполняющийся backup можно безопасно остановить из manager или командой mxbackup.php cancel. Отмена проверяется при обходе файлов, дампе БД, упаковке, подсчёте checksum и выгрузке в S3; временные файлы удаляются, запуск получает статус «Остановлен».
- Добавлена CLI-команда estimate для предварительной оценки состава и свободного места без создания архива.
- Функционально линия совпадает с 1.5.0-rc для MODX 2; общее ядро различается только номером версии в manifest.
mxBackup 2.1.0-rc (2026-08-09)
- Архив можно выгружать в S3 или совместимое хранилище (MinIO, Selectel, Yandex Object Storage). Копия, лежащая на той же машине, что и сайт, защищает от испорченной базы и неудачного обновления, но не от потери самой машины.
- Хранилище задаётся профилем, а не общей настройкой: боевая копия уезжает с сервера, а обезличенная копия для разработки остаётся под рукой — платить за её хранение и трафик незачем.
- Ключи доступа необязательны. Если поля пустые, пакет берёт доступ из переменных окружения или из роли машины в облаке — тогда на сервере не хранится ни одного ключа.
- Неудачная выгрузка не считается провалом копирования: архив создан и лежит на диске, в отчёте появляется предупреждение. Локальные копии в этом случае не удаляются.
- После успешной выгрузки на диске остаётся столько копий, сколько указано в профиле (минимум одна): остальные уже в облаке.
- Своя глубина хранения в облаке. По умолчанию пакет там ничего не удаляет — если у хранилища есть собственное правило истечения, две несогласованные ротации хуже одной.
- Восстановление умеет забирать архив прямо из хранилища: mxbackup.php restore --from-remote=ИМЯ_АРХИВА.
- Новые команды: remote-list (что лежит в хранилище) и remote-check (доступ на чтение, а с ключом --write — и на запись).
- Проверка конфигурации в интерфейсе и в консоли теперь охватывает и настройки хранилища: ошибка видна до копирования, а не после получаса упаковки.
- Функционально линия сравнялась с 1.4.0-rc для MODX 2: ядро в обеих линиях снова совпадает дословно.
mxBackup 2.0.0-beta (2026-08-06)
- Первый выпуск линии для MODX Revolution 3. Мажор означает платформу: 2.x — MODX 3, 1.x — MODX 2; функционально версии равны.
- Интеграция с платформой переписана под тройку: PSR-4 модель MxBackup\Model, сервис mxbackup в контейнере MODX и короткий фасад $modx->mxbackup, namespaced-процессоры, коннектор принимает полное имя класса процессора.
- Интерфейс менеджера переписан с ExtJS на Vue 3 и использует общий стек пакета VueTools; без него страница сообщает о недостающей зависимости.
- Проверка конфигурации выведена в интерфейс: раньше процессор существовал, но вызвать его можно было только из CLI.
- Восстановление в интерфейсе стало явно двухшаговым: проверка архива, затем ввод кода подтверждения; кнопка запуска остаётся недоступной, пока код не совпал.
- Массовые операции над таблицами подписывают свою область действия: с непустым поиском они меняют только найденные таблицы.
- Артефакты запуска, убитого извне (обрыв SSH, лимит хостера, нехватка памяти), больше не остаются в каталоге архивов. Раньше там навсегда оставались недоделанный архив и рабочий каталог с незашифрованным дампом базы: аварийное завершение минует штатную уборку. Теперь следующий запуск удаляет такие остатки и сообщает об этом в отчёте.
- Ядро (выбор файлов и таблиц, дамп, обезличивание, manifest, retention, восстановление) перенесено без изменений и остаётся общим с линией MODX 2.
- Требования: MODX 3.0+, PHP 8.1+.
mxBackup 1.2.1-rc (2026-08-06)
- Правило хранения по возрасту больше не удаляет свежие архивы: количество из mxbackup.retention_count теперь несносимый минимум. Раньше остановившийся cron через mxbackup.retention_days мог оставить сайт вовсе без резервных копий.
- Кнопка «Сохранить» на вкладке «Настройки» больше не уходит за границу панели при изменении ширины окна или сворачивании дерева.
- Восстановлена иконка кнопки «Обновить» в истории запусков.
- Режимы профиля в русском интерфейсе подписаны по-русски: «Боевой», «Обезличенный», «Пользовательский»; служебные значения prod, dev и custom не изменились.
- Удалены неиспользуемые ключи лексикона, оставшиеся от первой версии интерфейса.
- В readme пакета исправлено устаревшее описание хранения профилей: они лежат в PHP-файлах каталога mxbackup.config_dir, а не в таблицах.
mxBackup 1.2.0-rc (2026-08-05)
- Добавлено восстановление файлов и базы данных из ZIP, tar.gz и AES-256 ZIP через CLI и историю CMP.
- Preflight проверяет формат, manifest, checksum архива/SQL, пути элементов и совместимость основной версии MODX.
- Перед изменениями автоматически создаётся страховочный production-backup текущего сайта.
- Файлы восстанавливаются атомарно в merge-режиме; SQL importer принимает только выражения, создаваемые mxBackup.
- Добавлено отдельное право mxbackup_restore и подтверждение восстановления кодом из checksum архива.
mxBackup 1.1.0-beta (2026-08-05)
- Добавлено AES-256 шифрование содержимого ZIP-архивов с fail-closed проверкой результата.
- Пароль шифрования настраивается отдельно для каждого профиля и не возвращается в CMP, отчёты или manifest.
- mxLogger используется как основной журнал запусков и ошибок; при его отсутствии или сбое пакет пишет в стандартный журнал MODX.
- Профили и пользовательские правила перенесены из БД в переносимые PHP-файлы.
- CMP профилей, таблиц и обезличивания переработан без редактирования сырого JSON.
mxBackup 1.0.0-beta (2026-08-05)
- Первый публичный выпуск для MODX Revolution 2.
- Production- и обезличенные development-бэкапы файлов и MySQL.
- CLI, manager UI, профили, правила, история, retention и email-отчёты.




Последние обсуждения в сообществе MODX.pro