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

Перенос сайта на другой сервер кажется простой операцией: скопировать файлы, базу и поменять DNS. На практике основные проблемы возникают не во время копирования, а в момент переключения: часть пользователей уже попадает на новый сервер, часть ещё на старый, заказы могут расходиться по двум базам, cron продолжает работать в двух местах, а почта внезапно перестаёт отправляться.
Поэтому хороший перенос начинается с плана, а не с архива.
Сначала зафиксируйте текущее окружение
Нужно знать версии PHP, веб-сервера, базы данных, набор PHP-расширений, лимиты, cron-задачи, сертификаты, почтовые настройки и внешние подключения. Новый сервер должен поддерживать проект не только «в целом», но и во всех его фоновых сценариях.
Для 1С-Битрикс полезно отдельно проверить требования ядра и сторонних модулей.
Подготовьте новый сервер заранее
До переключения домена сайт должен открываться на новом сервере через временный host или локальную запись hosts. Это позволяет проверить PHP, соединение с базой, загрузку файлов, отправку почты, интеграции и административную часть.
Переносить DNS на неподготовленный сервер — плохая стратегия: пользователи становятся участниками тестирования.
Снизьте TTL до миграции
Если DNS-запись кешируется несколько часов, переключение может растянуться. За некоторое время до работ TTL стоит уменьшить, чтобы обновлённый IP быстрее распространился по резолверам.
После успешной миграции TTL можно вернуть к обычному значению.
Главная сложность — изменяемые данные
Статические файлы можно скопировать заранее. С базой и пользовательскими загрузками сложнее: пока старый сайт работает, в нём появляются новые заказы, заявки, сообщения и файлы.
Поэтому обычно делают предварительную синхронизацию, затем короткое окно финального переключения, во время которого фиксируют последние изменения и выполняют окончательный перенос.
Не запускайте фоновые задачи в двух местах
После копирования сайта на новом сервере cron уже может быть настроен, а старый сервер ещё обслуживает пользователей. Если обе стороны начнут отправлять письма, выгружать товары или обрабатывать заказы, появятся дубли.
На время миграции нужно чётко понимать, какой сервер считается активным для фоновых процессов.
Что проверить сразу после переключения
- главную и ключевые страницы;
- авторизацию и личный кабинет;
- формы и отправку писем;
- корзину и оформление заказа;
- оплату и callback платёжной системы;
- обмены с CRM и 1С;
- cron и агентов;
- логи PHP, Nginx/Apache и базы;
- SSL-сертификат и редиректы.
Старый сервер не нужно выключать сразу
После переключения полезно некоторое время сохранить старую среду без фоновой активности. Она может понадобиться для сравнения конфигурации или быстрого отката.
Но при этом важно не допустить, чтобы на старом сервере продолжали накапливаться новые рабочие данные.
План отката должен существовать до начала работ
Если новая среда неожиданно показывает критическую ошибку, команда должна знать, как быстро вернуть трафик назад. Для этого нужны актуальная резервная копия, старый сервер в рабочем состоянии и понятные DNS-действия.
Перенос без простоя — это не обещание, что DNS переключится мгновенно. Это организация процесса так, чтобы переход между двумя средами не приводил к потере данных и бизнес-функций.
После миграции проведите финальный аудит
Когда трафик стабильно идёт на новый сервер, стоит проверить скорость, память, свободное место, ротацию логов, резервные копии и мониторинг. Новый сервер не должен просто «запуститься» — он должен быть готов к нормальной эксплуатации.
Планирование и проведение таких переносов входит в задачи технической поддержки и сопровождения сайтов.