Краткий ответ: чтобы перенести сайт WordPress на другой хостинг без потери данных, нужно заранее сделать полный backup файлов и базы, подготовить новый сервер, перенести wp-content, импортировать базу данных, правильно настроить wp-config.php, проверить сайт на новом хостинге до переключения DNS, затем аккуратно сменить DNS и повторно проверить формы, почту, SSL, кеш, ссылки и админку.
Перенос WordPress на другой хостинг опасен не самим копированием файлов, а мелкими ошибками: забыли базу данных, потеряли uploads, неверно указали DB_HOST, не перенесли .htaccess, сломали сериализованные данные в базе, не проверили PHP-версию, переключили DNS до тестирования или потеряли письма из-за неправильных MX-записей.
Официальная документация WordPress для переноса на новый сервер прямо начинает процесс с резервного копирования директории WordPress, изображений, плагинов, других файлов сайта и базы данных. Это важно, потому что WordPress состоит не только из файлов, но и из базы данных, где лежат записи, страницы, настройки, пользователи, меню, виджеты и данные плагинов. :contentReference[oaicite:1]{index=1}
При переносе чаще всего теряют или ломают:
Если перенос делается из-за медленной работы сайта, стоит после миграции проверить производительность отдельно. Для этого есть связанная инструкция как ускорить сайт на WordPress.
Сделайте backup базы и файлов, перенесите wp-content, импортируйте базу на новом хостинге, обновите wp-config.php, проверьте сайт через временный домен или hosts-файл, настройте SSL, затем переключите DNS.
Нужно перенести базу данных, wp-content, uploads, темы, плагины, wp-config.php, .htaccess, robots.txt, файлы верификации, кастомные файлы и настройки DNS/почты.
Нет. Файлы без базы данных не восстановят записи, страницы, пользователей, меню, настройки, товары, заказы и большую часть данных плагинов.
Перед переносом нужно понять, какой именно сайт переносится. Обычный блог, WooCommerce-магазин, LMS, мультиязычный сайт и сайт с личным кабинетом требуют разной осторожности.
| Зона проверки | Что проверить | Почему важно |
|---|---|---|
| Файлы | Размер сайта, wp-content, uploads, кастомные папки | Чтобы не потерять изображения и пользовательские файлы. |
| База данных | Размер, префикс таблиц, кодировка, доступы | В базе лежит основное содержимое WordPress. |
| PHP | Версия PHP, memory_limit, расширения | На новом хостинге сайт может не запуститься. |
| Почта | MX, SPF, DKIM, SMTP, формы | После смены DNS можно потерять письма. |
| SSL | Сертификат, HTTPS, редиректы | Без SSL будут предупреждения браузера и проблемы с формами. |
| Кеш | Page cache, Redis, OPcache, CDN | Старый кеш может отдавать неправильные данные. |
| SEO | URL, sitemap, robots.txt, редиректы | Чтобы не потерять индексацию и трафик. |
| WooCommerce | Заказы, оплаты, webhooks, сессии | Нужно не потерять новые заказы во время переноса. |
Безопасный перенос лучше делать не в один шаг, а по схеме: подготовка, копирование, тестирование, финальная синхронизация, переключение DNS, проверка после запуска.
Официальная документация WordPress по резервным копиям указывает типичный порядок: сначала сохранить базу данных, затем файлы WordPress; при восстановлении обычно сначала возвращают файлы, затем импортируют базу, а при смене доступов к базе обновляют wp-config.php. :contentReference[oaicite:2]{index=2}
В backup должны войти:
До копирования сайта проверьте, что новый хостинг технически подходит под проект.
Проверьте:
Если сайт переносится для улучшения скорости, не стоит переносить его на хостинг с такими же лимитами. Иначе проблема останется, даже если перенос выполнен правильно.
Перед переключением DNS лучше заранее снизить TTL для A-записи домена. Это помогает быстрее переключить посетителей на новый сервер, когда перенос уже проверен.
DNS propagation после смены nameserver или записей может занимать до 24–48 часов, потому что провайдеры и DNS-узлы обновляют кеш не мгновенно. :contentReference[oaicite:3]{index=3}
Практически лучше снизить TTL за 24 часа до переноса, если у вас есть доступ к DNS-зоне. После успешного переноса TTL можно вернуть к нормальному значению.
Перед финальным переносом нужно не дать старому сайту создать новые данные, которые не попадут в backup.
Для обычного сайта достаточно временно не редактировать страницы. Для WooCommerce, LMS и личных кабинетов лучше включить технический режим или выполнить финальную синхронизацию базы прямо перед переключением DNS.
Особенно важно не потерять:
Скопируйте все файлы сайта со старого хостинга на новый. Если сайт большой, лучше использовать архив, rsync или SSH, а не перетаскивать тысячи файлов через обычный FTP по одному.
Особое внимание:
Экспорт базы можно сделать через phpMyAdmin, Adminer, панель хостинга или mysqldump. На новом хостинге создайте новую базу, пользователя базы и импортируйте дамп.
Проверьте:
После переноса нужно обновить доступы к базе данных в wp-config.php.
Проверьте строки:
WordPress позволяет вручную задать WP_HOME и WP_SITEURL в wp-config.php, но официальная документация предупреждает, что это жёстко фиксирует адрес сайта и не всегда является лучшим решением, потому что такие значения уже нельзя менять на странице общих настроек. :contentReference[oaicite:4]{index=4}
Самая безопасная схема — сначала проверить сайт на новом хостинге, а уже потом переключать домен.
Проверить можно через:
Через hosts-файл можно открыть основной домен с IP нового сервера только на своём компьютере. Посетители при этом продолжают видеть старый сайт.
Если домен не меняется, а меняется только хостинг, массовая замена URL обычно не нужна. Если меняется домен, протокол HTTP/HTTPS или папка сайта, нужно корректно заменить старые ссылки в базе данных.
Нельзя делать грубую замену через обычный текстовый редактор в SQL-файле, если в базе есть сериализованные данные. Это может сломать настройки темы, виджеты, Elementor, WooCommerce, мультиязычные плагины и кастомные поля.
WP-CLI search-replace специально предназначен для поиска и замены строк в таблицах WordPress и умеет корректно обрабатывать PHP serialized data. :contentReference[oaicite:5]{index=5}
До переключения домена проверьте, что на новом хостинге можно выпустить SSL-сертификат. После смены DNS установите SSL и проверьте редирект с HTTP на HTTPS.
Проверьте:
Когда сайт на новом хостинге проверен, можно переключать DNS. Обычно меняют A-запись домена на новый IP или меняют nameserver у регистратора.
Если меняются только сервер и IP, а домен остаётся тем же, для SEO это обычно безопаснее, чем смена домена. Если меняется домен, нужно делать полноценную SEO-миграцию с 301-редиректами, sitemap и проверкой Google Search Console.
При переносе хостинга часто забывают, что DNS управляет не только сайтом, но и почтой. Если MX-записи были на старом хостинге, после смены nameserver письма могут перестать приходить.
Проверьте:
Если перенос идёт на новый домен, это уже не просто смена хостинга. Google Search Central описывает site move как изменение URL существующих страниц, включая смену домена, HTTP на HTTPS или изменение путей. Для минимизации потерь нужно правильно настроить редиректы и обновить сигналы для поиска. :contentReference[oaicite:6]{index=6}
При смене домена нужно:
Инструмент Change of Address в Search Console используется после того, как сайт уже перенесён и настроены редиректы; он сообщает Google о переносе с одного домена или поддомена на другой. :contentReference[oaicite:7]{index=7}
Важно: команды ниже могут повлиять на базу данных, файлы, wp-config.php, DNS-проверку и доступ к сайту. Перед выполнением сделайте backup. Не запускайте команды на рабочем сайте, если не понимаете, в какой папке находитесь и какая база подключена.
Куда выполнять: SSH на старом хостинге, в корне сайта.
mysqldump -u DB_USER -p DB_NAME > backup.sql
Замените DB_USER и DB_NAME на реальные данные из wp-config.php. Пароль команда попросит ввести отдельно.
Куда выполнять: SSH на старом хостинге, в папке сайта.
tar -czf site-files.tar.gz .
После переноса не оставляйте архив site-files.tar.gz в публичной папке сайта.
Куда выполнять: SSH на новом хостинге, в папке нового сайта.
tar -xzf site-files.tar.gz
Куда выполнять: SSH на новом хостинге.
mysql -u DB_USER -p DB_NAME < backup.sql
Куда вставлять: wp-config.php.
define( 'DB_NAME', 'new_database_name' );
define( 'DB_USER', 'new_database_user' );
define( 'DB_PASSWORD', 'new_database_password' );
define( 'DB_HOST', 'localhost' );
DB_HOST не всегда равен localhost. Некоторые хостинги используют отдельный адрес MySQL-сервера.
Куда вставлять: wp-config.php, выше строки “That’s all, stop editing”.
define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', false );
@ini_set( 'display_errors', 0 );
WordPress использует WP_DEBUG как константу для включения режима отладки, обычно через wp-config.php. На рабочем сайте лучше не выводить ошибки посетителям, а писать их в debug.log. :contentReference[oaicite:8]{index=8}
Куда выполнять: SSH в корне сайта на новом хостинге. Сначала используйте –dry-run.
wp search-replace 'https://old-domain.com' 'https://new-domain.com' --all-tables --dry-run
Куда выполнять: SSH в корне сайта на новом хостинге. Выполняйте только после backup базы.
wp search-replace 'https://old-domain.com' 'https://new-domain.com' --all-tables
Куда выполнять: SSH в корне сайта.
wp option get siteurl
wp option get home
Куда выполнять: SSH в корне сайта. Используйте, если нужно изменить siteurl и home.
wp option update siteurl 'https://example.com'
wp option update home 'https://example.com'
Куда выполнять: SSH в корне сайта.
wp rewrite flush
Куда выполнять: SSH в корне сайта.
wp core verify-checksums
Куда выполнять: терминал.
curl -I https://example.com
После правильного переноса сайт должен открываться на новом хостинге без потери страниц, изображений, пользователей, заказов, форм, SEO-настроек и доступа к админке.
Проверьте после переключения:
Если после переноса появились ошибка 500, белый экран или проблемы после обновления PHP, используйте связанные инструкции: ошибка 500 WordPress и сайт WordPress сломался после обновления.
Для небольшого сайта можно использовать миграционный плагин. Это проще, но не всегда подходит для больших проектов, WooCommerce, сайтов с большим uploads, нестандартным сервером или ограничениями по размеру загрузки.
Плюсы переноса через плагин:
Минусы:
Для больших сайтов с SSH лучше использовать rsync. Он передаёт только изменённые файлы и удобен для финальной синхронизации перед переключением DNS.
rsync -avz ./ user@new-server:/path/to/site/
Для магазина важно не потерять заказы между первым копированием и переключением DNS. Лучше сделать первый перенос заранее, проверить новый сервер, затем включить временный режим обслуживания, повторно экспортировать базу и uploads, импортировать свежие данные и только после этого переключить DNS.
Проверяйте не только сайт, но и DNS-записи.
nslookup example.com
dig example.com
dig MX example.com
После переключения DNS старый хостинг лучше оставить активным хотя бы на несколько дней. Это нужно на случай кеша DNS, забытых файлов, писем или необходимости сравнить старую и новую версию сайта.
После переезда проверьте доступы, FTP/SFTP, права файлов, wp-config.php, бэкапы, администраторов и security-настройки. Базовый список есть в материале защита WordPress от взлома.
Без базы данных сайт потеряет записи, страницы, пользователей, меню, настройки, товары, заказы и данные плагинов.
Если не перенести uploads, на сайте пропадут изображения, документы, PDF, галереи и файлы медиабиблиотеки.
Если новый сайт не проверен, после смены DNS посетители могут увидеть ошибку 500, белый экран, отсутствие SSL или сломанные стили.
При смене nameserver можно потерять MX-записи. Сайт будет работать, а письма — нет.
Так можно сломать сериализованные данные. Лучше использовать WP-CLI search-replace или проверенные инструменты для WordPress.
Если забыли файл, заказ, письмо или DNS ещё не обновился у части пользователей, быстро вернуть данные уже не получится.
После переноса сайт может открываться по HTTP, показывать mixed content или давать циклический редирект.
Неправильные права могут сломать загрузку изображений, кеш, обновления, плагины и запись debug.log.
Возможная причина: PHP Fatal error, несовместимая PHP-версия, нехватка памяти, ошибка в теме или плагине.
Что делать: включить debug.log, проверить error_log, временно отключить плагины, проверить активную тему и версию PHP.
Возможная причина: неверные DB_NAME, DB_USER, DB_PASSWORD, DB_HOST или права пользователя базы.
Что делать: сверить wp-config.php с данными новой базы, проверить импорт базы и доступ пользователя к базе.
Возможная причина: не перенесли uploads, неправильные права файлов, старые URL, hotlink-защита или кеш.
Что делать: проверить wp-content/uploads, права файлов, URL изображений, кеш и search-replace.
Возможная причина: не перенесён .htaccess, не работают rewrite rules, другая конфигурация Nginx/Apache.
Что делать: зайти в Настройки → Постоянные ссылки → Сохранить, проверить .htaccess или Nginx-конфиг.
Возможная причина: старый кеш, неправильные URL CSS/JS, mixed content, CDN отдаёт старые файлы.
Что делать: очистить кеш WordPress, CDN, браузера, проверить Network и выполнить корректный search-replace при смене домена.
Возможная причина: потеряны MX-записи, SMTP не настроен, SPF/DKIM не перенесены, почта осталась на старом хостинге.
Что делать: проверить DNS MX, SMTP-плагин, почтовые логи и отправку тестового письма.
Возможная причина: DNS propagation, кеш провайдера, неверная A-запись, hosts-файл, CDN.
Что делать: проверить A-запись, nameserver, dig/nslookup, очистить CDN и подождать обновления DNS-кеша.
Возможная причина: база была экспортирована до новых заказов, а DNS переключили позже.
Что делать: проверить старую базу, выполнить финальную синхронизацию заказов или восстановить недостающие данные вручную из старого сайта.
Да, если заранее подготовить новый хостинг, снизить TTL, скопировать сайт, проверить его через hosts-файл, сделать финальную синхронизацию и только потом переключить DNS. Небольшая задержка из-за DNS всё равно возможна.
Нужно переносить и файлы, и базу. Файлы содержат WordPress, темы, плагины и изображения. База содержит записи, страницы, пользователей, настройки, меню, заказы и данные плагинов.
Не обязательно. WordPress можно перенести целиком: файлы + база данных. Официальная документация WordPress указывает, что при переносе на новый сервер переустановка не требуется. :contentReference[oaicite:9]{index=9}
Да, для небольших сайтов это часто удобно. Но для больших сайтов, магазинов, LMS и проектов с большим количеством файлов лучше контролировать перенос вручную или через SSH.
Нужно перенести файлы и базу, проверить сайт на новом сервере, настроить SSL, затем изменить A-запись или nameserver. Массовая замена URL обычно не нужна, если домен и протокол не меняются.
Нужно заменить старый домен на новый в базе через безопасный search-replace, настроить 301-редиректы, обновить sitemap, добавить новый домен в Search Console и использовать Change of Address tool при переносе на другой домен или поддомен.
Частые причины: неправильный wp-config.php, ошибка базы, несовместимая PHP-версия, плагин кеша, security-плагин, неправильные права файлов или старый URL в базе.
Зависит от размера сайта, базы, uploads, скорости хостинга, DNS и сложности проекта. Маленький сайт можно перенести быстро, а магазин или LMS лучше переносить по плану с тестированием и финальной синхронизацией.
Не всегда. Но кеш-плагины, security-плагины, плагины оптимизации и object cache иногда лучше временно отключить или очистить их кеш после переноса.
Не сразу. Лучше оставить старый хостинг активным несколько дней после переноса, чтобы проверить DNS, почту, забытые файлы, заказы и возможные ошибки.
Если нужно перенести WordPress на другой хостинг без потери данных, важно сделать это аккуратно: сохранить базу и файлы, проверить новый сервер, DNS, SSL, почту, формы и работу сайта после запуска.
Перенос сайта WordPress на другой хостинг без потери данных — это не просто копирование файлов. Нужно перенести базу, wp-content, uploads, темы, плагины, настройки, DNS, SSL, почту и проверить сайт до переключения домена.
Безопасный порядок такой: backup, подготовка нового хостинга, снижение TTL, копирование файлов, импорт базы, настройка wp-config.php, тест через hosts-файл, SSL, переключение DNS, проверка сайта и финальная очистка кеша.
Главное — не удалять старый хостинг сразу и не переключать DNS до проверки нового сайта. Тогда перенос проходит спокойно, без потери данных, заявок, изображений, заказов и SEO-настроек.
Об авторе