Любой сайт на MODX, будь то старая добрая Evolution или современная Revolution, – это сложная связка из двух элементов: файлов движка (PHP, изображения, скрипты) и базы данных (БД), где хранятся все настройки, контент и логика работы. Просто скопировать папку с файлами на новый сервер не получится – без «родной» базы данных сайт превратится в мертвый набор кода.


Содержание:

  1. Когда нужно переносить сайт
  2. Подготовка к переносу: что сделать на старом хостинге
  3. Пошаговый процесс переноса MODX на новый хостинг
  4. Возможные ошибки после переноса и их устранение
  5. Заключение и чек-лист

Когда нужно переносить сайт

Перенос сайта на другой хостинг – не рядовая процедура, но иногда она становится необходимой. Вот самые частые ситуации:

  • Нагрузка и скорость. Текущий хостинг перестал справляться с посещаемостью, сайт тормозит или часто падает.
  • Цена и условия. Провайдер поднял стоимость тарифа, и вы нашли более выгодное предложение с лучшими характеристиками.
  • Качество поддержки. Техподдержка старого хостинга медленно реагирует или не может решить проблемы, связанные с работой сайта.
  • Смена домена или переход с тестового сервера. Вы купили новый домен или переносите сайт из «песочницы» на боевой домен.
  • Требования к окружению. Для работы сайта нужна более новая версия PHP, особые расширения или другой тип сервера (например, переезд с Windows на Linux).

Главная боль в том, что при неправильном переносе MODX вы рискуете получить классический «белый экран смерти» или ошибку подключения к БД. В этой инструкции мы по шагам разберем, как выполнить перенос сайта на MODX на другой хостинг без потери данных и нервов, даже если вы делаете это впервые.

Главная боль в том, что при неправильном переносе MODX вы рискуете получить классический «белый экран смерти» или ошибку подключения к БД. В этой инструкции мы по шагам разберем, как выполнить перенос сайта на MODX на другой хостинг без потери данных и нервов, даже если вы делаете это впервые.

Подготовка к переносу: что сделать на старом хостинге

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

Очистка кэша и завершение сессий

подготовка сайта modx к переезду

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

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

  1. Зайдите в админку MODX, в верхнем меню выберите «Управление» → «Очистить кэш». Подтвердите действие.
  2. Там же выберите «Управление» → «Завершить все сеансы». Это разлогинит всех пользователей, включая вас.
  3. Для надежности (как советуют опытные разработчики) зайдите на сервер через FTP или файловый менеджер хостинга и вручную удалите все содержимое папки /core/cache. Саму папку удалять не нужно.

Создание резервной копии (бэкапа)

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

Бэкап файлов:
Подключитесь по FTP к старому хостингу или откройте файловый менеджер в панели управления. Найдите корневую директорию сайта (обычно public_html, www или папка с доменом). Выделите все файлы и папки, упакуйте их в архив (ZIP или tar.gz). Затем скачайте архив на свой компьютер. Упаковка не только ускорит скачивание, но и сохранит структуру прав доступа (при использовании tar.gz на Linux-хостинге).

Бэкап базы данных MODX:

Узнайте, какая база принадлежит вашему сайту. Откройте файл /core/config/config.inc.php (для MODX Revolution) или тот, где хранятся настройки БД. Найдите строки:
$dbase = ‘имя_базы’;

  1. $database_user = ‘пользователь’;
  2. Зайдите в phpMyAdmin на старом хостинге (обычно ссылка есть в панели управления). Выберите нужную базу в списке слева.
  3. Перейдите на вкладку «Экспорт». Оставьте метод экспорта «Быстрый» и формат «SQL». Нажмите кнопку «Вперед» – браузер скачает файл с расширением .sql.
  4. Сохраните этот файл в той же папке на компьютере, где лежит архив с файлами сайта.

Теперь у вас есть все необходимое для безопасного переноса Modx на другой хостинг. Можно переходить к настройке нового сервера.

Нужен быстрый и надежный хостинг для сайта?

Cloud4box — это виртуальный хостинг на SSD-дисках с круглосуточной поддержкой. Гарантия бесперебойной работы, простая панель управления и установка WordPress в 1 клик. Перенесем ваш сайт бесплатно!

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

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

Перейти к выбору виртуального хостинга

Пошаговый процесс переноса MODX на новый хостинг

Когда подготовка завершена, а новый хостинг оплачен и активирован, можно приступать к главному этапу. Дальнейшие шаги нужно выполнять строго последовательно – от этого зависит, насколько гладко пройдет перенос сайта Modx на другой хостинг.

Шаг 1. Создание базы данных и пользователя на новом хостинге

Зайдите в панель управления новым хостингом. В зависимости от ее типа (cPanel, ISPmanager, DirectAdmin) интерфейс может отличаться, но логика везде одинакова:

  1. Найдите раздел «Базы данных» (Databases) → «MySQL Базы данных».
  2. Создайте новую базу, придумайте ей имя (например, modx_site).
  3. Там же создайте нового пользователя и задайте надежный пароль. Обязательно запишите имя базы, логин и пароль – они понадобятся через пару шагов.
  4. Добавьте созданного пользователя в базу данных, выдав ему все привилегии (полный доступ).

Шаг 2. Импорт базы данных (дампа)

В той же панели управления найдите ссылку на phpMyAdmin и войдите в него.

  1. В списке баз данных слева выберите ту, которую вы только что создали (она пока пустая).
  2. Перейдите на вкладку «Импорт».
  3. Нажмите «Выберите файл» и укажите путь к сохраненному ранее файлу .sql со старого сайта.
  4. Нажмите кнопку «Вперед» (или «Импорт») и дождитесь окончания загрузки. Все таблицы вашего сайта появятся в новой базе.

Шаг 3. Загрузка файлов сайта

Теперь нужно перенести файлы MODX. Используйте FTP-клиент (например, FileZilla) или файловый менеджер в панели хостинга.

  1. Подключитесь к новому серверу и перейдите в корневую папку, куда должен быть установлен сайт. Обычно это директория public_html, www или папка с именем вашего домена.
  2. Загрузите туда архив с файлами сайта, который вы скачали со старого хостинга.
  3. Распакуйте архив прямо на сервере (эта функция обычно есть в файловом менеджере или через SSH). Убедитесь, что все файлы «легли» в правильные папки, в корне папки сайта появились директории core, manager, connectors, assets.

Шаг 4. Самое важное: правка конфигурационных файлов

правка конфигов при переезде сайта modx

Это ключевой момент, отличающий перенос сайта на MODX от переноса многих других CMS. Нужно прописать новые пути и данные для подключения к БД.

Какие файлы править:

  • /core/config/config.inc.php (главный конфиг)
  • /config.core.php
  • /connectors/config.core.php
  • /manager/config.core.php

Что править:

Подключение к БД: Откройте файл /core/config/config.inc.php. Найдите и замените старые данные на те, что вы записали в шаге 1:
$database_user = ‘новый_пользователь’;

$database_password = 'новый_пароль';

$dbase = 'новое_имя_базы';

// Также проверьте строку DSN

$database_dsn = 'mysql:host=localhost;dbname=новое_имя_базы;charset=utf8';

Абсолютные пути: В этом же файле есть переменные $modx_core_path, $modx_processors_path, $modx_connectors_path и другие. В них прописаны пути к папкам на старом сервере (например, /home/oldhost/public_html/core/). Их нужно заменить на актуальные для нового сервера.

  • Как узнать новый путь? Самый простой способ – создать в корне сайта временный php-файл (например, path.php) с одной строкой <?php echo __DIR__; ?> и открыть его в браузере (site.ru/path.php). Вы увидите полный путь к корню.
  • Лайфхак для массовой замены: Если путей много, используйте редактор Notepad++. Откройте в нем файл config.inc.php, скопируйте старый путь, затем нажмите «Поиск» → «Найти в файлах». Укажите старый путь, в поле «Заменить на» вставьте новый, а в качестве директории для поиска выберите папку со всеми файлами сайта. Notepad++ пройдется по всем файлам и заменит пути везде, включая остальные config.core.php файлы.

Шаг 5. Финальная очистка кэша

Даже если вы уже чистили кэш на старом хостинге, на новом это нужно сделать обязательно. Удалите все содержимое папки /core/cache. Этот простой шаг предотвращает 90% ошибок, связанных с «белым экраном» и несоответствием старых данных.

Шаг 6. Настройка .htaccess и robots.txt

Если вы переносите сайт на новый домен, откройте файлы .htaccess и robots.txt в корне и замените в них старое доменное имя на новое. В .htaccess это особенно важно, если там прописаны правила редиректов.
Также убедитесь, что файл называется именно .htaccess, а не ht.access (некоторые разработчики переименовывают его на время переноса для безопасности).

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

Возможные ошибки после переноса и их устранение

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

ОшибкаВозможная причинаРешение
Белый экран (WSOD) или 500 Internal Server ErrorНеправильные пути в конфигурационных файлах; старый кэш конфликтует с новым сервером; неверные данные для подключения к БД.1. Полностью очистите папку /core/cache.
2. Перепроверьте все пути в файлах /core/config/config.inc.php, /config.core.php, /manager/config.core.php, /connectors/config.core.php.
3. Убедитесь, что имя БД, логин и пароль в config.inc.php совпадают с созданными на новом хостинге.
4. Проверьте логи ошибок сервера (обычно доступны в панели управления) – там может быть указана конкретная строка с проблемой.
503 Site temporarily unavailableОтсутствует или неправильно настроен файл .htaccess; база данных не импортировалась или указаны неверные данные для подключения.1. Проверьте, есть ли в корне сайта файл .htaccess. Если он назывался ht.access, переименуйте его обратно.
2. Убедитесь, что база данных импортирована (в ней есть таблицы) и данные в config.inc.php верны.
403 ForbiddenНеправильные права доступа к файлам или папкам; отсутствует индексный файл (index.php) в корневой директории.Выставите правильные права: на папки – 755, на файлы – 644. Это можно сделать через FTP-клиент или файловый менеджер хостинга. Проверьте, что корневая папка сайта указана верно в настройках хостинга.
404 на внутренних страницах (главная открывается)Отключены дружественные URL (ЧПУ) в настройках MODX; отсутствует или поврежден файл .htaccess.1. Зайдите в админку (если получится) и включите дружественные URL в системных настройках.
2. Проверьте наличие и корректность файла .htaccess. Можно взять стандартный из дистрибутива MODX и заменить им текущий.
Вместо админки сайта открывается админка хостингаКонфликт путей: панель управления хостингом использует тот же адрес /manager, что и административная часть MODX (часто встречается в ISPmanager).Переименуйте папку /manager/ на сервере, например, в /admin/. Затем откройте файл /core/config/config.inc.php и исправьте в нем две строки: $modx_manager_path (укажите новый путь к папке) и $modx_manager_url (укажите новый URL, например, /admin/).

Если после применения рекомендаций ошибка сохраняется, попробуйте запустить установку MODX в режиме обновления: загрузите файлы из дистрибутива (папки core и setup) поверх ваших и запустите site.ru/setup, выбрав опцию «Обновление». Это часто помогает «подружить» перенесенный сайт с новым окружением.

Заключение и чек-лист

успешный запуск и проверка сайта modx

Перенос сайта на MODX на другой хостинг – процесс, требующий внимания к деталям, но вполне выполнимый самостоятельно. Главное – действовать последовательно и не пропускать шаги. Чтобы убедиться, что все прошло успешно, пройдитесь по финальному чек-листу:

  • Сайт открывается по основному и внутренним URL.
  • Административная панель доступна (по адресу site.ru/manager/ или тому, который вы указали).
  • Изображения, стили и скрипты загружаются корректно (проверьте через инструменты разработчика в браузере).
  • Все ссылки на страницах ведут на правильные адреса (нет битых ссылок).
  • Формы обратной связи, поиск и другие интерактивные элементы работают.
  • В панели управления MODX нет предупреждений об ошибках.

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

Часто задаваемые вопросы

Принципиальной разницы нет: обе версии требуют переноса файлов и базы данных, а также правки конфигурационных файлов. Однако в Revolution больше конфигурационных файлов (в папках connectors, manager) и сложнее структура кэширования, поэтому особое внимание уделите очистке core/cache и обновлению путей во всех config.core.php.

Обычно нет, если вы переносите сайт без смены домена. При смене домена иногда требуется обновить ссылки в контенте и настройках. Для этого можно использовать плагины типа «Migrate» или выполнить SQL-запросы на замену старого домена новым в таблицах modx_site_content и modx_site_tmplvar_contentvalues. Также в таблице workspaces (для Revolution) может храниться путь к ядру – его нужно проверить и при необходимости обновить.

Используйте прямой перенос с сервера на сервер: через SSH (команды rsync или scp) или через промежуточное облачное хранилище. На многих хостингах есть возможность подключиться по SSH и выполнить перенос без скачивания на компьютер. Также можно попросить техподдержку нового хостинга помочь с переносом данных.

Да, если у вас есть доступ по FTP и к базе данных через phpMyAdmin (или вы знаете данные для подключения к БД). Файлы вы скачаете по FTP, а дамп базы сделаете через phpMyAdmin, если он доступен. Если phpMyAdmin недоступен, можно использовать скрипт для создания дампа, например, через админку MODX (есть дополнения) или через консольные команды, если есть SSH.

Попробуйте очистить кэш еще раз и пересохранить системные настройки. Иногда помогает вход в админку и принудительное сохранение любого параметра (например, языка интерфейса). Если не помогает – проверьте права на папку core/cache, они должны позволять веб-серверу записывать файлы.