К основному содержимому

Миграция WordPress на VDS ZevsHost

Миграция · 12.01.2025 · 4 мин чтения
Иллюстрация к статье «Миграция WordPress на VDS ZevsHost»

Перенос WordPress на VDS: порядок, при котором сайт не ляжет

Переход с виртуального хостинга на VDS отличается от переезда между двумя хостингами тем, что на VDS ничего не настроено заранее: нет ни веб-сервера, ни PHP, ни базы данных. Их придётся поднять до того, как копировать файлы. Ниже — оба рабочих способа и порядок, который не оставляет сайт без доступа даже на пару минут.

  1. Разверните на VDS LEMP или LAMP стек (Nginx/Apache + PHP-FPM + MySQL) той же или более новой версии PHP, что и на старом хостинге.
  2. Скопируйте файлы сайта и снимите дамп базы, не останавливая старый сайт.
  3. Импортируйте базу и файлы на VDS, настройте виртуальный хост под тестовый домен или IP.
  4. Проверьте сайт на VDS через файл hosts, не трогая DNS реального домена.
  5. Переключите DNS только после того, как убедились, что сайт работает корректно.

Способ 1: плагин All-in-One WP Migration

Подходит для сайтов до 512 МБ на бесплатной версии плагина — это лимит на размер экспортируемого архива, установленный самим плагином.

  1. Установите плагин All-in-One WP Migration на старом сайте через админку WordPress.
  2. Экспортируйте сайт: WP Migration → Export → File, дождитесь скачивания файла .wpress.
  3. Установите чистый WordPress на VDS той же версии, что и на старом сайте.
  4. Установите тот же плагин на новом сайте и импортируйте файл через Import.
  5. Плагин сам обновит URL сайта в базе данных — вручную ничего менять не нужно.

Способ 2: ручной перенос через mysqldump и rsync

Подходит для сайтов любого размера и даёт больше контроля над процессом.

Файлы

rsync -avz --progress -e ssh /var/www/old-site/ root@vds-ip:/var/www/new-site/

База данных

mysqldump -u user -p --single-transaction wordpress_db > wp_dump.sql
scp wp_dump.sql root@vds-ip:/root/
mysql -u user -p wordpress_db < wp_dump.sql

Замена адреса домена в базе

Если тестируете сайт под временным адресом, а не под боевым доменом, ссылки в базе нужно заменить WP-CLI, а не вручную через SQL — WordPress хранит сериализованные массивы, и обычный UPDATE их ломает.

wp search-replace 'https://old-domain.com' 'https://new-domain.com' --all-tables

Настройка wp-config.php на новом сервере

define('DB_NAME', 'wordpress_db');
define('DB_USER', 'wp_user');
define('DB_PASSWORD', 'новый_пароль');
define('DB_HOST', 'localhost');

Сравнение способов переноса

СпособЛимит по размеруНужен SSHКонтроль над процессом
All-in-One WP Migration (бесплатно)до 512 МБнетминимальный
All-in-One WP Migration (Unlimited Extension)без ограничениянетминимальный
Ручной перенос (rsync + mysqldump)без ограничениядаполный

Проверка на VDS до переключения DNS

echo "IP_ВАШЕГО_VDS example.com www.example.com" | sudo tee -a /etc/hosts

Откройте сайт в браузере — он подключится к VDS по домену, при этом реальные посетители продолжат видеть старый хостинг. Проверьте вход в админку, оформление заказа (если это интернет-магазин на WooCommerce) и корректность загрузки изображений из wp-content/uploads.

Типичные ошибки после переноса

СимптомПричина и решение
Белый экран без ошибокНе хватает PHP-расширения (обычно gd или mysqli) — установите на VDS то же окружение, что было на старом хостинге
Ошибка «Error establishing a database connection»Неверные данные в wp-config.php или MySQL слушает не localhost, а сокет — проверьте DB_HOST
Изображения и стили не загружаютсяВ базе остались старые ссылки на домен — выполните wp search-replace ещё раз
404 на всех страницах, кроме главнойНе настроены правила ЧПУ в Nginx/Apache — добавьте try_files для Nginx или включите mod_rewrite для Apache

Откат при неудачном переносе

  1. Не удаляйте сайт на старом хостинге, пока VDS не отработает минимум сутки.
  2. Если после переключения DNS сайт работает нестабильно, верните старые A-записи домена.
  3. Исправьте проблему на VDS без спешки и повторите проверку через hosts перед повторным переключением.

Когда этот способ не подходит

Если на VDS нет опыта администрирования сервера, самостоятельная настройка LEMP-стека и последующая поддержка (обновления PHP, безопасность, бэкапы) потребуют больше времени, чем экономия от перехода с хостинга. В таком случае разумнее заказать бесплатную миграцию силами ZevsHost на управляемый VDS с готовой панелью.

Проверка результата

  • Сравните число записей в таблице wp_posts на старом и новом сайте.
  • Проверьте, что все плагины активны и не требуют повторной активации лицензии.
  • Прогоните сайт через PageSpeed Insights — на VDS скорость обычно выше, чем на общем хостинге.
  • Настройте автоматический бэкап на новом сервере ещё до переключения DNS — см. статью о синхронизации и резервном копировании через rsync.
Статья помогла?
← Назад в базу знаний Задать вопрос поддержке