Не многие знают, но перенос сайта на движке Modx на другой хостинг — это боль. Столкнулся я в очередной раз на работе с этой задачей, провозился с ней несколько часов, и решил поделиться со всеми соим опытом, дабы сохранить ваши нервы и время. Сейчас будем пошагово разбирать весь процесс с самого начала.
Процесс переноса сайта Modx на новый хостинг
Шаг 1. Очистка кеша. Тут все просто, достаточно в админке Modx перейти в «Сайт» — «Обновить сайт». Данное действие удалит все временные файлы.
Шаг 2. Сброс всех администраторов. Переходим в админке сайта в «Безопасность» — «Завершить все сеансы». Этим действием мы разлогинили всех пользователей, включая себя.
Шаг 3. Полный сброс кеша. Заходим в файловую систему сайта через любой файл-менеджер и удаляем все содержимое с папки /core/cache.
Шаг 4. Делаем бекапы. Обязательно нужно создать копию всех файлов сайта и базу данных. Если сайт находится на вашем компьютере, то можно просто запаковать все его файлы в архив, а базу данных выгрузить через phpMyAdmin в формате SQL.
Шаг 5. Выгрузка файлов на сервер. Загружать файлы на новый сервер, лучше всего одним архивом. Поверьте моему опыту. При простом перетаскивании большого количества файлов, некоторые из них могут потеряться в пути и сайт будет работать не корректно. Плюс, некоторые хостеры не присваивают файлам права, то есть файл есть, а права на него стоят 000 — такой файл не будет работать. Вывод: переносите файлы архивом, а не в ручном режиме. Но если все же выбрали сложный путь (ручной режим), то советуем внимательно следить, чтобы все файлы были загружены.
Шаг 6. Переносим базу данных. Заходим в phpMyAdmin — есть на любом, нормальном хостинге и переходим на вкладку «Импорт», куда и выгружаем нашу базу данных в формате SQL. Следим за процессом. Если вверху появилась зеленая строчка, значит импорт прошел успешно. Если полезли ошибки — экспорт БД не правильно сделан.
Шаг 7. Правим конфиг на новом сервере. Редактируем следующие файлы:
- /core/config/config.inc.php (имя базы данных, пользователь, пароль, абсолютный путь к файлам). В этом файле важно сменить название новой базы данных тут: $database_dsn = ‘mysql:host=localhost;dbname=имя_новой_БД;charset=utf8′;
- /config.core.php (абсолютный путь к файлам)
- /connectors/config.core.php (абсолютный путь к файлам)
- /manager/config.core.php (абсолютный путь к файлам)
Для проверки абсолютного пути на вашем хостинге, можно посмотреть эту информацию в панели управления хостингом или загрузить этот файл в корень своего сайта и запустить его в адресной строке, додав название файла к доменному имени: http://ваш-сайт.com/название-файла.php.
Обратите внимание, что абсолютный путь к файлам указывается от корня сервера, а не домена. Это важно для правильной работы сайта! Ну вот и все, что вам нужно знать при переносе сайта на Modx на новый сервер. Конечно, могут еще возникнуть баги