Резервное копирование и перенос MODX: что проверить заранее
Перенос MODX ломается не на копировании файлов, а на забытых настройках, правах и путях к базе данных. Разбираем безопасный порядок работ для MODX Revolution 2.x и 3.x, проверки перед запуском и типичные ошибки.

Перенос сайта на MODX Revolution обычно занимает от одного до нескольких часов, если заранее подготовлены доступы к хостингу, базе данных и домену. В результате вы должны получить копию сайта на новом сервере с теми же страницами, пользователями, дополнениями и настройками, а старый сайт — сохранить как точку отката. Главный риск не в самом архиве: сайт может открыть главную страницу, но потерять изображения, выдавать 500 или подключаться к старой базе.
Что подготовить до начала
Инструкция подходит для MODX Revolution 2.8 и новее, а также для MODX 3.x. Названия пунктов в панели управления могут отличаться в зависимости от перевода и установленной версии. MODX Evolution — отдельная ветка с другим устройством файлов и обновлений; перенос по этой схеме для неё не стоит считать безопасным.
- Доступ к файлам сайта через SSH, SFTP или файловый менеджер.
- Доступ к базе данных и возможность создать её резервную копию.
- Доступ к панели нового хостинга: база данных, PHP, домен, SSL и права на файлы.
- Информацию о версии MODX, PHP, СУБД и установленных дополнениях.
- Время на проверку сайта до переключения домена или DNS.
- Отдельное место для хранения архивов, не только папку на том же сервере.
Версию MODX можно посмотреть в панели управления или в служебной информации установки. Версию PHP и параметры базы данных проверьте в панели хостинга. Не переносите сайт вслепую на последний доступный PHP: старое дополнение или пакет может поддерживать только более раннюю версию. Совместимость нужно проверять по документации конкретного дополнения и его версии.
Рабочий бэкап — это не архив, который удалось скачать. Это архив, из которого вы действительно восстановили сайт и проверили его на отдельном адресе.
Бэкап — резервная копия файлов и данных, которую можно использовать для восстановления. Для MODX одной копии файлов недостаточно: содержимое ресурсов, пользователи, настройки и данные дополнений находятся в базе данных.
Пошаговый перенос MODX
- Зафиксируйте исходное состояние. Запишите версию MODX, PHP, MySQL или MariaDB, домен, корневую папку сайта и список критичных дополнений. Отдельно отметьте нестандартные виртуальные папки, задания cron и настройки веб-сервера. Проверка: у вас есть список, с которым можно сравнить новый сервер после переноса.
- Снизьте риск изменений во время копирования. Если на сайте есть заказы, формы, комментарии или личные кабинеты, выберите период низкой нагрузки. На время работ ограничьте редактирование контента или включите техническую страницу. Иначе новые записи могут появиться уже после выгрузки базы и не попасть в копию. Проверка: вы понимаете, какие данные нельзя потерять и с какого момента сайт считается замороженным.
- Сделайте резервную копию базы данных. Экспортируйте всю базу, а не отдельные таблицы. Сохраните файл локально и ещё в одном независимом месте. Если панель хостинга предлагает выбор кодировки, не меняйте кодировку без причины: проблемы с русским текстом часто появляются именно при ручном пересохранении дампа. Проверка: архив базы скачан, имеет ненулевой размер и открывается выбранным инструментом хотя бы для просмотра структуры.
- Скопируйте все файлы MODX. В копию должны попасть ядро, каталог assets, пользовательские файлы, конфигурация и файлы дополнений. Не ограничивайтесь папкой assets: подключаемые классы и настройки компонентов могут находиться в других каталогах. Папку с кэшем переносить не обязательно, но отсутствие временных файлов не должно превращаться в отсутствие пользовательских загрузок. Проверка: на новом сервере присутствуют index.php, config и assets, а размер копии не выглядит подозрительно маленьким.
- Подготовьте новую базу. Создайте базу, пользователя и выдайте ему права, необходимые для работы MODX. Имя базы, имя пользователя, пароль, сервер и префикс таблиц понадобятся при настройке нового подключения. Если база уже существует, сначала проверьте её содержимое: импорт поверх чужих таблиц может смешать две установки. Проверка: вы можете подключиться к новой базе выбранным инструментом и видите пустую или заранее очищенную схему.
- Загрузите файлы и импортируйте базу. Сначала перенесите файлы, затем импортируйте дамп в подготовленную базу. Большой дамп может не пройти через веб-интерфейс из-за ограничения времени или размера загрузки. В таком случае используйте доступный на вашем хостинге способ импорта и сверяйтесь с его инструкцией, а не делите SQL-файл случайным образом. Проверка: количество таблиц и их префикс соответствуют исходной установке, а файлы сайта полностью загружены.
- Обновите параметры подключения. В конфигурации новой установки должны быть актуальные реквизиты базы и пути нового сервера. Не копируйте старые абсолютные пути без проверки: каталог пользователя и корень сайта на новом хостинге почти всегда отличаются. У MODX также есть настройки, связанные с адресом сайта и путями к ресурсам; их нужно проверить после импорта. Проверка: сайт не показывает ошибку подключения к базе и открывает страницу без перенаправления на старый домен.
- Проверьте права на файлы. Веб-сервер должен читать файлы сайта, а MODX — записывать кэш и каталоги, которые используются для загрузок и временных данных. Не выдавайте всей установке права на запись без необходимости. Точный владелец файлов и безопасные значения прав зависят от схемы PHP на вашем хостинге. Проверка: вы можете войти в админку, очистить кэш и загрузить тестовый файл в используемый каталог.
- Очистите кэш MODX. После переноса старый кэш содержит пути и результаты, относящиеся к прежнему серверу. Очистите кэш из панели управления; если панель не открывается, удаляйте только временное содержимое кэша по инструкции вашей версии, не стирая конфигурацию и пользовательские файлы. Проверка: страницы генерируются заново, а в URL и HTML не остаются старые пути.
- Проверьте сайт до переключения DNS. Используйте временный домен, тестовый адрес хостинга или локальное сопоставление домена с новым IP. Откройте главную, несколько вложенных страниц, форму обратной связи, поиск, личный кабинет, страницы с изображениями и раздел администрирования. Проверка: вы получили список проверенных сценариев, а не только убедились, что главная страница загружается.
- Переключите домен и включите HTTPS. После проверки направьте домен на новый сервер. Убедитесь, что сертификат выпущен для нужных имён, а перенаправление с HTTP на HTTPS не создаёт цикл. После обновления DNS часть посетителей ещё может попадать на старый сервер из-за кеширования DNS. Проверка: сайт открывается с обычного домена, формы отправляются, ссылки не ведут на тестовый адрес.
Что именно проверить после переноса
Контент и ссылки
Сравните несколько страниц из разных разделов, включая ресурсы с вложенностью и страницы, доступные только авторизованным пользователям. Проверьте изображения, PDF, файлы для скачивания и ссылки в меню. Особое внимание уделите абсолютным ссылкам: часть из них могла остаться привязанной к старому домену.
Формы и уведомления
Отправьте тестовую форму и убедитесь, что запись сохранилась, письмо ушло, а адрес получателя не изменился. На новом сервере могут отличаться ограничения исходящей почты, настройки SMTP и политика хостинга. Проверяйте не только сообщение об успешной отправке в браузере, но и фактическое получение письма.
Дополнения и фоновые задачи
Откройте страницы, где работают поисковые, кеширующие, платёжные и каталожные компоненты. Проверьте задания cron: они не переносятся автоматически настройками домена и могут быть привязаны к старому пути к PHP или проекту. Если сайт принимает заказы, отдельно проверьте создание заказа, уведомления и выгрузку в связанные системы.
Если не получилось
- Ошибка подключения к базе данных. Проверьте имя базы, пользователя, пароль, адрес сервера и порт. На новом хостинге сервером базы может быть не localhost. Также убедитесь, что пользователь получил права именно на импортированную базу.
- Ошибка 500 после переноса. Посмотрите журнал ошибок PHP и веб-сервера. Частые причины — несовместимая версия PHP, отсутствующее расширение, неверные права или дополнение, которое не поддерживает окружение нового сервера. Не меняйте сразу несколько параметров: иначе будет трудно понять причину.
- Главная открывается, а вложенные страницы дают 404. Проверьте правила перенаправлений веб-сервера и поддержку ЧПУ. Конфигурация Apache и Nginx переносится отдельно от файлов MODX, поэтому старый файл настроек не всегда применим на новом сервере.
- Пропали изображения или загрузки. Сравните содержимое assets и настройки медиапутей. Часто переносят только базовые файлы, но забывают пользовательские каталоги, созданные менеджером файлов или дополнением.
- Админка зацикливает вход или перебрасывает на старый адрес. Очистите кэш, проверьте настройки адреса сайта и cookies домена. Если сайт открывается по тестовому адресу, убедитесь, что новый адрес не конфликтует с сохранёнными настройками HTTPS и перенаправлений.
Где этот подход ломается
Обычный перенос файлов и базы подходит для одной установки MODX на новый сервер. Он становится опаснее, если одновременно меняются версия MODX, PHP, база данных, домен и набор дополнений. Не объединяйте все изменения в одну операцию: сначала перенесите сайт в максимально похожее окружение, проверьте его, затем обновляйте платформу или компоненты отдельным этапом.
Отдельный риск — сайт с постоянными изменениями данных. Если во время копирования приходят заказы или заявки, одного дампа недостаточно. Нужен согласованный момент остановки записи или отдельный план синхронизации. Такой перенос лучше проводить с разработчиком, который понимает структуру конкретных дополнений.
Что делать дальше
Не удаляйте старый сервер сразу после переключения домена. Сохраните его и исходные архивы до тех пор, пока не проверите несколько циклов работы сайта: формы, заказы, фоновые задания и резервное восстановление. На новом сервере настройте автоматические копии базы и файлов, храните хотя бы одну копию вне хостинга и периодически выполняйте тестовое восстановление на отдельном адресе.
Следующий практический шаг — составить короткий чек-лист именно для вашей установки MODX: версия, PHP, база, дополнения, cron, почта, загрузки и домены. При следующем переносе этот список сэкономит больше времени, чем повторная ручная проверка главной страницы.
Проверка рекламы на риски: Что в макете вызовет вопросы ФАС: превосходные степени, сравнения, обещания результата, маркировка.
Спросить за 40 ₽Источники: Официальная документация MODX, Репозиторий MODX Revolution
Частые вопросы
Можно ли перенести MODX только копированием файлов?
Нужно ли переносить кэш MODX?
Что делать, если после переноса сайт показывает ошибку 500?
Можно ли одновременно перенести сайт и обновить MODX?
Что будет, если после переключения DNS часть посетителей попадает на старый сервер?
Подойдёт ли эта инструкция для MODX Evolution?
Как проверить, что резервная копия действительно рабочая?
Материал носит информационный характер и подготовлен редакцией «Агентуры». Он не является офертой, рекламой или индивидуальной консультацией. Упомянутые продукты, компании и торговые знаки принадлежат их правообладателям. Перед принятием решений, влекущих юридические или финансовые последствия, обратитесь к профильному специалисту.