Определение простыми словами
Миграция сайта — это перенос работающего проекта между серверами или хостингами без потери данных и с минимальной паузой в работе. Процесс затрагивает файлы, базу данных, почтовые ящики, cron-задания, SSL-сертификаты, DNS-записи и иногда серверные конфиги.
Различают «холодную» и «горячую» миграции. Холодная — с остановкой сайта на время копирования: проще, но требует окно в час и более. Горячая — без простоя, через репликацию БД и синхронизацию файлов в реальном времени, например rsync по SSH с последующим dt-cutover. Для интернет-магазинов с активным трафиком обычно выбирают второй вариант.
Сравнение
| Параметр | Холодная миграция | Горячая миграция | Через плагин CMS |
|---|---|---|---|
| Простой | 30 мин — 4 часа | 0–60 секунд | 5–30 минут |
| Сложность | низкая | высокая | низкая |
| Подходит для | лендингов, блогов | e-commerce, SaaS | WordPress, Bitrix |
| Нужен ли SSH | не обязательно | да | нет |
| Стоимость | бесплатно | требует админа | от 0 до 100$ |
Кейсы использования
- Переезд с медленного shared-хостинга на VPS — даёт прирост скорости загрузки в 2–3 раза.
- Смена страны размещения для соответствия требованиям 152-ФЗ (хранение персональных данных в РФ).
- Объединение нескольких проектов на один сервер для оптимизации расходов и упрощения сопровождения.
- Переход с панели cPanel на ISPmanager или наоборот при смене провайдера.
- Негатив: миграция WordPress без проверки таблицы wp_options и serialized-данных приводит к битым ссылкам и поломанным виджетам — нужны утилиты вроде wp-cli search-replace.
Технические детали
# Холодная миграция WordPress между двумя серверами
# 1. На старом сервере — снимаем дамп БД и архив файлов
mysqldump -u dbuser -p sitedb > sitedb.sql
tar -czf site.tar.gz /var/www/site
# 2. Передаём на новый сервер
rsync -avz --progress sitedb.sql site.tar.gz user@new-host:/tmp/
# 3. На новом сервере — разворачиваем
ssh user@new-host
mkdir -p /var/www/site && tar -xzf /tmp/site.tar.gz -C /
mysql -u dbuser -p sitedb < /tmp/sitedb.sql
# 4. Замена URL внутри БД (для WordPress)
wp search-replace 'https://old.example.com' 'https://new.example.com'
--skip-columns=guid --all-tables
# 5. Меняем DNS-запись A с TTL 300 секунд
# и проверяем
dig +short new.example.com
За 24 часа до миграции уменьшите TTL DNS-записей до 300 секунд — переключение пройдёт быстрее. После переключения проверьте: SSL-сертификат, отправку почты, индексацию поисковыми системами через Google Search Console.
🔥 Где это применяется
Частые вопросы
Сколько времени занимает миграция сайта?
Лендинг переезжает за 15–30 минут. Сайт на WordPress с 5 ГБ медиафайлов — 2–4 часа. Крупный интернет-магазин с миллионом товаров требует подготовки и переезжает за 8–24 часа с минимальным простоем.
Делает ли провайдер миграцию сам?
Большинство хостингов предлагают бесплатный перенос для виртуальных тарифов. Для VPS услуга обычно платная или выполняется силами клиента. Перед заказом проверьте политику в условиях договора.
Что делать с почтой при переезде?
Заранее настройте новый MX-сервер, перенесите ящики через imapsync или archiver, оставьте старые записи MX как backup в течение 7–14 дней. Так почта не потеряется во время переключения DNS.