Назад в блог/Как перенести сайт на другой хостинг без длительного простоя

Как перенести сайт на другой хостинг без длительного простоя

План переноса сайта на новый хостинг: проверка окружения, резервные копии, перенос базы и файлов, настройка DNS и HTTPS, контроль данных и откат.

Перенос сайта между серверами с переключением DNS
Переезд сайта на новый хостинг

Чтобы перенести сайт на другой хостинг, нужно согласованно перенести файлы и базу данных, проверить новый сервер и только потом переключить DNS. Для статичного сайта эти шаги обычно проще. У интернет-магазина, форума или другого проекта с постоянными записями важно отдельно решить, куда во время переезда попадут новые заказы и сообщения.

По данным Wordstat, запрос «как перенести сайт на другой хостинг» набрал 129 показов за последние 30 дней. Эта инструкция описывает безопасный порядок миграции сайта на VPS или другой сервер, включая проверку DNS, HTTPS, почты и откат.

Составьте карту текущей установки

Перед копированием выпишите:

  • домены и поддомены сайта;
  • версию PHP/Node/Python и системные расширения;
  • веб-сервер, настройки виртуального хоста и HTTPS;
  • тип базы данных и её версию;
  • каталоги с загрузками и пользовательскими файлами;
  • cron-задачи, очереди и фоновые процессы;
  • DNS-записи, включая A, AAAA, MX, TXT и записи проверки домена.

Сравните характеристики старого и нового окружения. Одного совпадения объёма диска недостаточно: важны версия runtime, расширения, кодировки базы данных, права каталогов, лимиты памяти и настройки веб-сервера. Если сервер новый и пока пустой, начните с руководства по настройке VPS и firewall.

Подготовьте DNS заранее

Проверьте текущий TTL записей домена у DNS-провайдера. Если значение большое, заранее уменьшите его до небольшого интервала, который позволяет выставить панель (например, 300 секунд), и дождитесь истечения прежнего TTL. Если сократить TTL за несколько минут до переключения, часть резолверов всё равно продолжит использовать закэшированное старое значение.

Запишите исходные DNS-значения перед изменением — они пригодятся для отката. Не меняйте весь набор записей вслепую: почта может работать у отдельного провайдера, а MX, SPF, DKIM, DMARC и TXT-проверки домена должны остаться согласованными с ним. Особенно проверьте AAAA: оставленная запись IPv6 может отправлять часть посетителей на старый сервер, даже если A уже указывает на новый.

Сделайте резервную копию и перенесите данные

Сохраните файлы сайта, конфигурацию веб-сервера, базу данных и список фоновых задач. Убедитесь, что архивы и SQL-дамп не лежат в каталоге, который отдаётся через интернет. Проверьте размер и дату копий, а не только код завершения команды.

Для WordPress можно экспортировать базу через WP-CLI:

BASH
wp db export backup.sql

Файлы можно передать по SSH, например rsync, а базу импортировать на новом сервере:

BASH
wp db import backup.sql

Команды запускайте из каталога сайта и с правильным системным пользователем. Секреты базы и параметры подключения берите из менеджера секретов или защищённого конфига; не публикуйте их в истории команд и тикетах.

Если переносите WordPress на новый домен, адреса в базе могут понадобиться заменить. Сначала посмотрите, что изменится:

BASH
wp search-replace 'https://old.example' 'https://new.example' --all-tables-with-prefix --dry-run

Проверьте отчёт, затем повторите команду без --dry-run. WP-CLI учитывает сериализованные данные. Если домен не меняется, массовая замена URL обычно не нужна. Справка WordPress отдельно описывает миграцию и связанные с ней адреса сайта.

Для проекта с активными заказами обычного экспорта недостаточно: данные могут измениться между выгрузкой и переключением DNS. На время финальной синхронизации включите режим обслуживания или остановите запись, сделайте заключительный перенос и лишь после него направляйте пользователей на новую базу. Для миграции без окна обслуживания понадобится заранее настроенная репликация или иной проверенный механизм синхронизации.

Проверьте новый сервер до переключения

Поднимите на новом сервере тот же домен, но пока оставьте публичный DNS на старом. Сверьте сайт локально через файл hosts или тестовый поддомен. Проверьте:

  • главную, внутренние страницы и формы;
  • вход в административную часть;
  • загрузку изображений и файлов;
  • чтение и запись в базу;
  • фоновые задачи и отправку почты;
  • редиректы HTTP→HTTPS и версию TLS-сертификата;
  • журналы веб-сервера и приложения.

Убедитесь, что новый сервер выдаёт сертификат для нужного имени. До переключения DNS можно выпустить сертификат через DNS-проверку, если ваш центр сертификации и DNS-провайдер это поддерживают. Для HTTP-проверки используйте тестовый домен или подмену адреса на своём компьютере; не проверяйте сайт на продакшене с отключённой проверкой сертификата как постоянное решение.

Если сайт зависит от внешних сервисов, заранее проверьте разрешённые IP, webhook-адреса, API-ключи, исходящую почту и правила firewall. Перенос файлов сам по себе не обновит белые списки у платёжного провайдера или CRM.

Переключите DNS и наблюдайте за запросами

После успешной проверки обновите нужные A и, если используется, AAAA записи. Сохраните старый сервер доступным на время кэширования DNS и для оперативного возврата. Контролируйте доступность с нескольких сетей, TLS, коды ответов, журналы ошибок и поступление новых данных на новом сервере.

Не отключайте старый сервер сразу после первого успешного запроса: посетители и DNS-резолверы могут ещё обращаться к нему по прежним значениям. Срок ожидания выбирайте по прежнему TTL и фактическим запросам. Убедитесь, что почтовые записи и исходящая отправка не изменились после переезда.

Заранее продумайте откат

Перед переключением сохраните прежние DNS-записи и проверьте, что старый сервер можно вернуть в работу. Если новый сайт уже принимает заказы или комментарии, простой возврат DNS не перенесёт эти записи назад и создаст две расходящиеся копии базы. Для такого проекта сначала остановите запись, синхронизируйте данные и только затем переключайте трафик обратно.

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

Документация

Нужен быстрый сервер под ваш проект?

Арендуйте производительный KVM VPS в Москве или Германии на скоростных NVMe дисках от 300 ₽/мес. Автовыдача за 60 секунд, выделенный IPv4 и защита от DDoS.

Выбрать тариф