Как перенести сайт на другой хостинг
Перенос WordPress-сайта на другой хостинг обычно сводится к двум вещам: перенести файлы сайта и перенести базу данных, а затем правильно подключить всё на новом сервере. Если сделать это аккуратно, сайт переедет без потери контента, настроек и медиафайлов. Ошибки почти всегда возникают не в самом копировании, а на этапе подготовки: забыли бэкап, не перенесли скрытые файлы, не поправили адрес сайта или не проверили PHP-версию на новом тарифе.
Ниже — практический порядок действий, который подходит для обычного WordPress-сайта. Если у вас большой проект, интернет-магазин на WooCommerce или сайт с нестандартной конфигурацией, отдельные шаги всё равно те же, но времени на проверку и тестирование потребуется больше.
Сначала определите, каким способом переносить сайт
Есть два рабочих сценария. Первый — ручной перенос через файловый менеджер, FTP и экспорт базы данных. Второй — перенос с помощью плагина или инструмента миграции. Оба варианта нормальные, но подходят для разных задач.
| Способ | Когда удобен | Что важно учесть |
|---|---|---|
| Ручной перенос | Нужен полный контроль, сайт обычный, вы понимаете структуру файлов и базы | Нужно не забыть wp-config.php, скрытые файлы, дамп базы и заменить старый адрес сайта, если меняется домен |
| Плагин миграции | Нужно быстрее и без ручной сборки архива, особенно если сайт небольшой или средний | Зависит от лимитов хостинга, размера сайта и качества плагина; иногда всё равно приходится править адреса вручную |
Если сайт небольшой, а доступ к старому и новому хостингу у вас есть, ручной перенос обычно надёжнее и понятнее. Если времени мало или вы не хотите собирать архив и базу вручную, можно использовать миграционный плагин. Для подбора инструмента иногда удобно посмотреть каталог плагинов WPShop: https://wpshop.ru/plugins. Но для самого переноса WordPress штатных средств и стандартных инструментов хостинга часто достаточно.
Что подготовить до переноса
Перед любыми действиями сделайте резервную копию. Это не формальность: если на новом хостинге что-то пойдёт не так, у вас должен остаться исходный сайт в рабочем состоянии.
Проверьте заранее:
- доступ к панели управления старого хостинга;
- доступ к FTP/SFTP или файловому менеджеру;
- доступ к phpMyAdmin или другому инструменту для работы с базой;
- данные для нового хостинга: домен, логин, пароль, имя базы, пользователь базы, хост базы;
- версию PHP на новом тарифе и доступные расширения, если сайт использует плагины, которым они нужны;
- размер сайта и базы, чтобы понимать, не упираетесь ли вы в лимиты загрузки и импорта.
Если у вас включён кеширующий плагин, CDN или отдельная интеграция с почтой, запишите текущие настройки. После переезда их часто приходится настраивать заново.
Как перенести файлы WordPress
Файлы сайта обычно лежат в корне домена или в отдельной папке. Вам нужно перенести не только папку wp-content, но и весь WordPress-каталог целиком, потому что в нём находятся ядро, темы, плагины и конфигурация.
Самый безопасный порядок такой:
- Скачайте все файлы сайта со старого хостинга на компьютер или сразу на новый сервер через FTP/SFTP.
- Особенно проверьте наличие скрытых файлов, например
.htaccess. В файловых менеджерах их нередко не видно по умолчанию. - Если на новом хостинге уже есть пустая установка WordPress, удалите её или перенесите в отдельную папку, чтобы не смешивать файлы.
- Загрузите файлы сайта на новый хостинг в нужный каталог.
Если сайт большой, удобнее сначала упаковать его в архив на старом хостинге и потом распаковать на новом. Но это зависит от панели управления и лимитов хостинга. На некоторых тарифах архив распаковывается медленно или с ошибками, и тогда надёжнее копировать через FTP/SFTP.
Отдельно проверьте папку wp-content/uploads. Именно там лежат изображения и другие медиафайлы. Если перенести только базу данных, а uploads забыть, сайт откроется, но картинки в записях начнут пропадать.
Как перенести базу данных без повреждения данных
База данных хранит записи, страницы, настройки темы, настройки плагинов, пользователей и многое другое. Для переноса обычно используют экспорт из phpMyAdmin или аналогичного инструмента на старом хостинге.
Практический порядок такой:
- Откройте phpMyAdmin на старом хостинге.
- Выберите базу данных, которая используется сайтом.
- Сделайте экспорт в формате SQL.
- На новом хостинге создайте новую базу данных и пользователя, если это требуется тарифом.
- Импортируйте SQL-файл в новую базу.
Если база большая, импорт может не пройти из-за лимита времени или размера файла. Это обычная ситуация на недорогих тарифах. Тогда помогает разбить импорт на части, использовать SSH-доступ, если он есть, или обратиться в поддержку хостинга. Не стоит несколько раз подряд запускать один и тот же импорт вслепую: можно получить дубли или частично загруженную базу.
После импорта проверьте, что в базе есть таблицы WordPress, обычно они начинаются с префикса, указанного в wp-config.php. Если префикс нестандартный, важно не перепутать его при подключении сайта.
Что поправить в wp-config.php
Файл wp-config.php связывает WordPress с новой базой данных. Без него сайт не подключится.
Откройте файл и проверьте параметры подключения:
define( 'DB_NAME', 'имя_базы' );
define( 'DB_USER', 'пользователь_базы' );
define( 'DB_PASSWORD', 'пароль_базы' );
define( 'DB_HOST', 'localhost' );Значение DB_HOST не всегда равно localhost. У некоторых хостингов это отдельный адрес или имя сервера базы. Его нужно брать из панели хостинга или из инструкции провайдера.
Если на новом хостинге другой префикс таблиц, проверьте переменную $table_prefix. Она должна совпадать с тем, что реально есть в базе.
Если меняется домен, а не только хостинг
Когда сайт переезжает на другой хостинг, но домен остаётся тем же, обычно достаточно перенести файлы и базу, а затем указать новый IP у регистратора домена или в DNS. Если же вместе с хостингом меняется и домен, нужно обновить адрес сайта внутри WordPress.
Минимум, что нужно проверить:
- значения
siteurlиhomeв таблицеwp_options; - внутренние ссылки в записях и страницах;
- пути к изображениям и вложениям, если в контенте есть абсолютные URL старого домена.
Для замены старого домена на новый лучше использовать поиск и замену, а не править всё вручную. В WordPress это можно сделать через специализированный плагин или через инструменты хостинга, если они умеют безопасную замену в базе. Ручная замена в phpMyAdmin опасна: в сериализованных данных легко повредить структуру, и тогда часть настроек плагинов сломается.
Как проверить сайт после переезда
После переноса не спешите сразу менять DNS на рабочем домене, если есть возможность сначала проверить сайт на временном адресе или через файл hosts. Это помогает поймать ошибки до того, как их увидят посетители.
Проверьте по порядку:
- открывается ли главная страница;
- работают ли записи, страницы и рубрики;
- загружаются ли изображения и файлы из медиатеки;
- открывается ли админка WordPress;
- сохраняются ли настройки в панели администратора;
- работают ли формы, поиск, комментарии и авторизация;
- нет ли ошибок PHP в логах хостинга;
- не сломались ли постоянные ссылки.
Если страницы открываются с ошибкой 404 после переноса, часто помогает повторное сохранение структуры постоянных ссылок в админке WordPress. Это обновляет правила маршрутизации и пересоздаёт нужные правила в .htaccess для Apache или аналогичную логику на других серверах.
Если сайт показывает белый экран или ошибку подключения к базе, сначала проверьте wp-config.php, затем доступность базы и правильность логина, пароля и имени хоста базы.
Отдельные нюансы для WooCommerce и больших сайтов
Если на сайте есть интернет-магазин, форма заказа, личный кабинет или много заказов, перенос лучше делать в период минимальной активности. Иначе часть заказов может попасть в старую базу, а часть — в новую, если вы перенесли сайт не в момент полной остановки.
Для больших сайтов важны три вещи:
- объём базы и медиафайлов;
- лимиты на импорт, время выполнения PHP и размер загружаемых файлов;
- наличие кеша, CDN и внешних сервисов, которые могут хранить старые адреса.
Если сайт тяжёлый, иногда разумнее не делать всё вручную на общем хостинге, а выбрать миграционный плагин или попросить поддержку нового хостинга помочь с переносом. Это не слабость, а нормальная практика, когда объём данных уже не укладывается в стандартные лимиты.
Когда лучше не переносить сайт вручную
Ручной перенос подходит не всегда. Если у вас нет доступа к базе, старый хостинг ограничивает выгрузку, сайт давно не обновлялся или в нём много нестандартных интеграций, безопаснее использовать инструмент миграции или помощь хостинга. Это особенно актуально, если проект критичен по времени и простой сайта недопустим.
Вручную стоит переносить тогда, когда вы понимаете, где лежат файлы, как устроена база и что именно нужно проверить после запуска. Если хотя бы один из этих пунктов вызывает сомнения, лучше сначала сделать полную резервную копию и протестировать перенос на копии сайта, а не на боевом домене.
Главная идея простая: перенос WordPress-сайта на другой хостинг — это не одна операция, а цепочка из подготовки, копирования файлов, переноса базы, правки конфигурации и проверки результата. Если не пропускать эти этапы, переезд проходит предсказуемо и без сюрпризов.