Как перенести сайт WordPress на новый хостинг: Три рабочих способа для переноса сайта

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

Суть проблемы: Технически WordPress критически зависит от абсолютных путей в файловой системе и настройках базы данных. Простое копирование файлов и дампа SQL без последующей адаптации приводит к неработоспособности сайта на новом сервере. Основная задача — обеспечить целостность всех компонентов (ядро CMS, темы, плагины, медиафайлы, база данных) и их корректную взаимосвязь в новой среде.

Три фундаментальных подхода к переносу:

  • Использование сервиса бесплатного переноса от нового хостинг-провайдера.
  • Применение специализированных плагинов для автоматизации процесса.
  • Ручной перенос файлов и базы данных с последующей тонкой настройкой.

Способ 1: Минимум усилий — Выбор хостинга с бесплатной миграцией

Почему это оптимально для большинства пользователей:

  • Экономия времени и ресурсов: Процесс делегируется техническим специалистам провайдера.

  • Гарантия корректности: Опытные администраторы знают все подводные камни переноса WordPress.

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

  • Комплексное решение: Хостинг берет на себя перенос файлов, БД и критически важное обновление путей и конфигураций.

Как выбрать нового хостинг-партнера:

  • Подтвержденная экспертиза в WordPress: Поищите отзывы, специфичные именно к процессу миграции WordPress.
  • Прозрачность процесса: Уточните, что именно входит в "бесплатную миграцию" (только файлы и БД? обновление путей? проверка работоспособности?).
  • Поддержка объемов: Убедитесь, что провайдер готов перенести сайт вашего размера (особенно актуально для ресурсов с большими медиабиблиотеками или сложными базами данных).
  • Совместимость сред: Проверьте, совпадают ли версии PHP, MySQL/MariaDB, расширения на старом и новом хостинге. Хороший провайдер поможет решить возможные несовместимости.
  • Тестовый период/тестовая среда: Возможность проверить работу сайта до переключения DNS — огромное преимущество.

Этапы работы с провайдером:

  • Подача заявки: Обычно через тикет-систему или специальную форму, указав данные доступа к старому хостингу (FTP/SFTP, SSH, панель управления, phpMyAdmin).

  • Подготовка: Создание резервных копий на старом хосте (на всякий случай!). Информирование провайдера об особенностях сайта (нестандартные настройки, критические плагины).

  • Выполнение миграции: Хостинг-инженеры переносят данные и выполняют необходимые настройки.

  • Тестирование: Вам предоставляется доступ к сайту на новом сервере по временному URL (например, IP-адресу или поддомену хостинга) для всесторонней проверки функциональности.

  • Финал: После вашего подтверждения корректной работы, провайдер помогает или информирует о дальнейших шагах по переключению домена.

Важность резервного копирования: Даже при использовании услуги миграции, создание полной резервной копии сайта (файлы + БД) на локальном компьютере или облачном хранилище перед началом процесса — обязательная страховка.

Рейтинг хостингов с бесплатной миграцией сайта

Beget
Timeweb
AdminVPS
Макхост
REG.RU

Способ 2: Автоматизация с помощью плагинов — Баланс контроля и удобства

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

Безусловный лидер: All-in-One WP Migration

Принцип работы:

Экспорт: На исходном сайте устанавливается плагин. Он создает единый архивный файл (.wpress), включающий все: ядро WordPress, установленные темы и плагины, медиафайлы (папка uploads), базу данных со всеми настройками, записями, страницами, комментариями, пользователями.

Подготовка новой среды: На новом хостинге разворачивается чистая установка WordPress (часто через установщик панели управления типа cPanel, ISPmanager, Plesk).

Импорт: На новой установке WordPress устанавливается тот же плагин All-in-One WP Migration. Через его интерфейс загружается ранее созданный файл .wpress.

Автоматическая адаптация: Плагин выполняет магию:

  • Распаковывает все файлы в нужные каталоги.
  • Импортирует базу данных.
  • Автоматически обновляет абсолютные пути в базе данных и конфигурационных файлах, чтобы они соответствовали новой среде.
  • Обновляет константы WP_HOME и WP_SITEURL в wp-config.php.
  • Обрабатывает сериализованные данные (опасность при ручном поиске-замене!).

Финал: После импорта сайт на новом хостинге становится функциональной копией старого. Требуется только обновить постоянные ссылки (Настройки -> Постоянные ссылки -> Сохранить) и очистить кеш браузера/плагинов кеширования.

Преимущества:

  • Предельная простота: Интерфейс интуитивно понятен.

  • Все включено: Не нужно отдельно копировать файлы и БД.

  • Безопасность путей: Автоматическая коррекция путей исключает распространенные ошибки.

  • Скорость: Процесс значительно быстрее ручного метода.

Ограничения и обходные пути:

Лимит размера файла: Бесплатная версия часто имеет ограничение (например, 512 МБ). Решения:

  • Покупка платного расширения (например, "Unlimited Extension").
  • Использование плагина-компаньона "All-in-One WP Migration File Extension" для разбивки архива на части.
  • Альтернативные плагины: Duplicator, UpdraftPlus Migrator, WPvivid Backup & Migration (также могут иметь ограничения в бесплатных версиях).

Очень большие сайты (>10 ГБ): Могут возникнуть проблемы со временем выполнения скриптов или памятью PHP. В этом случае более надежны ручной перенос или инструменты на уровне сервера (rsync, mysqldump).

Специфичные серверные настройки: Плагин переносит данные WordPress, но не конфигурации веб-сервера (Nginx/Apache), .htaccess может потребовать дополнительной проверки/настройки на новом хосте.

Другие достойные плагины для миграции:

  • Duplicator: Более гибкий, создает установочный пакет (архив + скрипт-установщик). Позволяет менять домен во время миграции. Отлично подходит для создания stage-окружений или клонирования сайтов. Бесплатная версия мощна, Pro-версия снимает ограничения.

  • UpdraftPlus Premium: Знаменитый бэкап-плагин, в премиум-версии имеет модуль миграции/клонирования. Удобно, если вы уже используете его для резервного копирования.

  • WP Migrate DB / WP Migrate DB Pro: Специализируются исключительно на миграции и синхронизации баз данных. Идеальны для синхронизации stage и production, менее удобны для полного переноса файлов (требуют их отдельного копирования). Pro версия обрабатывает сериализованные данные и медиафайлы.

Способ 3: Ручной перенос — Максимальный контроль для сложных случаев

Когда это необходимо:

  • Очень крупные сайты, превышающие ограничения плагинов.

  • Сайты с нестандартной структурой или файлами вне корня WordPress.

  • Необходимость полного контроля над каждым этапом.

  • Требования повышенной безопасности (например, передача данных по SFTP/SSH вместо HTTP).

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

Как перенести сайт WordPress на хостинг: Пошаговый детальный алгоритм

Этап 1: Подготовка и резервное копирование

Полная резервная копия: На старом хосте создайте:

Резервную копию файлов: Скачайте ВСЕ содержимое корневой директории сайта (где лежат wp-admin, wp-content, wp-includes, wp-config.php и др.) через FTP/SFTP-клиент (FileZilla, WinSCP, Cyberduck) или менеджер файлов панели управления.

Резервную копию базы данных:

  • Войдите в phpMyAdmin на старом хосте.
  • Выберите базу данных вашего WordPress.
  • Перейдите на вкладку "Экспорт".
  • Выберите метод "Быстрый" или "Пользовательский". При выборе "Пользовательский" убедитесь, что экспортируются все таблицы (обычно с префиксом wp_), выбран формат SQL, и включена опция "Добавить DROP TABLE / VIEW / PROCEDURE / FUNCTION / EVENT / TRIGGER" (это позволит легко заменить старые данные при импорте). Нажмите "Вперед".
  • Сохраните полученный .sql файл на локальный компьютер.

Запишите критичные данные со старого сервера:

  • Версии PHP, MySQL/MariaDB.
  • Содержимое файла wp-config.php (особенно DB_NAME, DB_USER, DB_PASSWORD, DB_HOST, DB_CHARSET, DB_COLLATE, $table_prefix, WP_HOME, WP_SITEURL, AUTH_KEY, SECURE_AUTH_KEY и т.д. — НЕ копируйте сам файл пока!).
  • Настройки веб-сервера, если они критичны (например, нестандартные правила в .htaccess или nginx.conf).
  • Данные FTP/SSH.

Этап 2: Подготовка нового хостинга

Создайте базу данных и пользователя:

  • Используя панель управления нового хостинга (cPanel, ISPmanager, DirectAdmin и др.), создайте новую базу данных MySQL/MariaDB.
  • Создайте пользователя базы данных.
  • Назначьте этому пользователю ВСЕ привилегии на созданную базу данных.
  • Запишите: Имя новой базы данных, Имя пользователя БД, Пароль пользователя БД, Хост БД (часто localhost, но может отличаться, например, mysql.hosting.com).

Загрузите файлы WordPress:

  • Вариант А (Чистая установка): Установите свежую версию WordPress через установщик панели управления хостинга. Это создаст базовые файлы. Затем удалите только что созданный файл wp-config.php (он будет пересоздан) и папку wp-content. Теперь загрузите вашу резервную копию файлов (включая вашу папку wp-content и старый wp-config.phpно пока не перезаписывайте новый wp-config.php!).
  • Вариант Б (Полная загрузка): Через FTP/SFTP загрузите ВСЕ файлы из вашей резервной копии напрямую в корневую директорию сайта на новом хосте. Это перезапишет все, включая свежеустановленные файлы (если вы использовали установщик).

Настройте wp-config.php для новой среды:

  • Найдите файл wp-config.php в корне сайта на новом сервере.
  • Откройте его в текстовом редакторе (через FTP-клиент или файловый менеджер панели).

Обновите следующие константы:

  • define('DB_NAME', 'имя_старой_базы'); -> Замените на имя_новой_базы.
  • define('DB_USER', 'пользователь_старой_базы'); -> Замените на пользователь_новой_базы.
  • define('DB_PASSWORD', 'пароль_старой_базы'); -> Замените на пароль_новой_базы.
  • define('DB_HOST', 'хост_старой_базы'); -> Замените на хост_новой_базы (например, localhost).

Проверьте/обновите:

  • $table_prefix – должен совпадать с префиксом таблиц на старом сайте (если не менялся).
  • define('WP_HOME', 'http://старый-сайт.ru'); -> Закомментируйте или удалите эту строку на время тестирования! Она будет мешать доступу по IP/временному URL. Позже установите правильный новый URL.
  • define('WP_SITEURL', 'http://старый-сайт.ru'); -> Закомментируйте или удалите эту строку на время тестирования! Аналогично WP_HOME.

Важно! Секции с AUTH_KEY, SECURE_AUTH_KEY и т.д. НЕ ТРОГАЙТЕ. Они уникальны для каждого сайта и должны оставаться оригинальными.

Сохраните изменения.

Этап 3: Импорт базы данных и обновление путей

Импорт базы данных:

  • Войдите в phpMyAdmin нового хостинга.
  • Выберите созданную вами новую базу данных.
  • Перейдите на вкладку "Импорт".
  • Нажмите "Выбрать файл" и укажите сохраненный ранее .sql файл резервной копии старой БД.
  • Убедитесь, что выбран формат SQL.
  • Нажмите "Вперед". Дождитесь завершения импорта.

Обновление URL и путей в базе данных (КРИТИЧЕСКИЙ ШАГ):

Почему: В базе данных (особенно в таблицах wp_posts, wp_postmeta, wp_options) жестко прописаны старые абсолютные URL (http://старый-сайт.ru/wp-content/uploads/...) и пути к файлам. Их нужно заменить на новые.

Метод А (Через SQL-запросы в phpMyAdmin): Внимание! Делайте только при уверенности и с резервной копией новой БД!

  • Перейдите в импортированную базу данных в phpMyAdmin.

  • Откройте вкладку "SQL".

  • Выполните серию запросов (замените старый-сайт.ru и новый-временный-путь на актуальные значения). Используйте временный URL или IP, предоставленный новым хостингом для доступа к сайту до смены DNS.

-- Обновить 'home' и 'siteurl' (основные адреса сайта)
UPDATE `wp_options` SET `option_value` = 'http://новый-временный-путь' WHERE `option_name` = 'home' OR `option_name` = 'siteurl';

-- Обновить GUID записей (важно для импорта/экспорта)
UPDATE `wp_posts` SET `guid` = REPLACE(`guid`, 'http://старый-сайт.ru', 'http://новый-временный-путь');

-- Обновить контент записей и страниц (где в тексте есть старые ссылки)
UPDATE `wp_posts` SET `post_content` = REPLACE(`post_content`, 'http://старый-сайт.ru', 'http://новый-временный-путь');

-- Обновить мета-данные (например, пути к миниатюрам)
UPDATE `wp_postmeta` SET `meta_value` = REPLACE(`meta_value`, 'http://старый-сайт.ru', 'http://новый-временный-путь');

Внимание к префиксу: Если ваш префикс таблиц не wp_, замените его в запросах на ваш (например, myprefix_options).

Метод Б (С помощью плагина "Better Search Replace"): Более безопасный и удобный способ.

  • Убедитесь, что сайт частично доступен по временному URL/IP.
  • Войдите в админ-панель WordPress на новом сервере (используя старые логин/пароль).
  • Установите и активируйте плагин "Better Search Replace".
  • Перейдите в Инструменты -> Better Search Replace.
  • В поле "Search for" введите старый URL сайта (http://старый-сайт.ru).
  • В поле "Replace with" введите временный URL/IP нового сайта (http://ip-адрес или http://временный-домен.хостинг.ру).
  • Выберите ВСЕ таблицы базы данных (или конкретные, если уверены).
  • Поставьте галочку "Run as dry run?" для тестового прогона (покажет, что будет заменено, без внесения изменений). Просмотрите отчет.
  • Если все верно, снимите галочку "Run as dry run?" и нажмите "Run Search/Replace" для реального выполнения замены.
  • Плагин корректно обрабатывает сериализованные данные.

Этап 4: Тестирование на новом сервере

Доступ по временному адресу: Используйте временный URL (обычно вида http://ip-адрес/~username или http://temp-domain.hosting.com) или IP-адрес сервера, предоставленный хостингом.

Всесторонняя проверка:

  • Главная страница и основные разделы: Загружаются ли?
  • Страницы записей и статей: Открываются? Корректно ли отображаются изображения и медиа? (Проверьте пути в исходном коде страницы).
  • Административная панель (/wp-admin): Доступна? Можно ли войти под старыми учетными данными?
  • Плагины и темы: Активированы ли? Работают ли критически важные (контакты, SEO, кеширование, безопасность)? Проверьте их настройки.
  • Формы: Отправляют ли письма? (Проверьте спам, настройки SMTP).
  • Поиск по сайту: Работает?
  • Проверка ошибок: Включите WP_DEBUG в wp-config.php (замените define('WP_DEBUG', false); на define('WP_DEBUG', true); и define('WP_DEBUG_DISPLAY', true);). Просмотрите лог ошибок на сервере или через плагин, если появляются предупреждения/ошибки.

Очистка кешей: Очистите кеш браузера, кеш любых плагинов кеширования на новом сайте, кеш сервера (если доступен).

Обновление постоянных ссылок: Перейдите в Настройки -> Постоянные ссылки и просто нажмите "Сохранить изменения" (без изменения структуры). Это перезаписывает правила в .htaccess/nginx.conf и сбрасывает внутренние кеши ссылок WordPress.

Этап 5: Переключение домена (Изменение NS-записей)

  • Получите NS-серверы нового хостинга: Они указаны в приветственном письме или в разделе информации об аккаунте в панели управления нового провайдера. Обычно это 2-4 записи вида:

ns1.newhosting.com

ns2.newhosting.com

(иногда ns3..., ns4...)

  • Войдите в панель управления вашего регистратора домена: Это компания, у которой вы купили доменное имя (например, REG.RU, NIC.RU, GoDaddy, Namecheap).
  • Найдите раздел управления DNS / NS-серверами: Обычно называется "DNS Management", "Name Servers", "NS-записи", "Доменные имена" -> Управление -> Серверы имен.
  • Замените текущие NS-записи: Удалите старые NS-записи (указывающие на предыдущего хостера) и добавьте новые, полученные от нового хостинг-провайдера. Важно ввести их точно, включая точки в конце, если они указаны.
  • Сохранение изменений: Подтвердите внесение изменений.
  • Ожидание распространения (DNS Propagation): Это самый длительный этап. Изменения DNS распространяются по глобальной системе DNS-серверов интернета. Время обновления (TTL - Time To Live) обычно составляет от 12 до 72 часов, хотя современные регистраторы и хостинги часто уменьшают его.

Что происходит в это время: Пользователи могут попадать как на старый, так и на новый сервер, в зависимости от того, какой DNS-сервер разрешил их запрос. Это называется "разрывом DNS".

Важные действия:

Не закрывайте старый хостинг сразу! Держите старый сайт доступным минимум 72 часа после смены NS.

Мониторинг: Используйте онлайн-инструменты проверки DNS propagation (например, whatsmydns.net), вводя ваш домен и проверяя, на какие IP-адреса он разрешается в разных точках мира.

Финал: Когда DNS полностью обновится, весь трафик будет идти на новый сервер. Теперь можно:

  • Окончательно обновить WP_HOME и WP_SITEURL: В файле wp-config.php раскомментируйте или добавьте строки, установив окончательный домен:

define('WP_HOME', 'https://ваш-домен.ru');
define('WP_SITEURL', 'https://ваш-домен.ru');

  • Провести финальное тестирование уже по основному домену.
  • Настроить SSL-сертификат на новом хостинге (если не был установлен автоматически).
  • Отменить услуги старого хостинга после подтверждения стабильной работы сайта на новом месте.

Эволюция инфраструктуры: Когда обычного хостинга недостаточно — Переход на VPS

Признаки необходимости перенести сайт на VPS:

  • Рост посещаемости: Стабильно > 2000-3000 уникальных посетителей в сутки.

  • Ресурсоемкие задачи: Интенсивное использование плагинов кеширования, обработка видео, сложные вычисления, работа с большими базами данных.

  • Нестабильность на Shared-хостинге: Частые ошибки 500, 503, превышение лимитов CPU/RAM, медленная загрузка страниц.

  • Потребность в изоляции и безопасности: "Соседи" по shared-серверу могут представлять риск. VPS обеспечивает виртуальную изоляцию.

  • Необходимость кастомизации: Требуется установка специфичного ПО, настройка параметров сервера (версии PHP, модули, настройки веб-сервера), root-доступ (на unmanaged VPS).

  • Планируемый рост: VPS легко масштабируется (добавление CPU, RAM, диска).

Преимущества VPS перед виртуальным хостингом:

  • Гарантированные ресурсы: Выделенные ядра CPU, оперативная память, дисковое пространство.

  • Повышенная производительность: Отсутствие конкуренции за ресурсы с другими сайтами.

  • Лучшая безопасность: Виртуальная изоляция снижает риски от уязвимостей на соседних сайтах.

  • Полный контроль (на unmanaged): Возможность тонкой настройки ОС, веб-сервера (Nginx/Apache), PHP-FPM, баз данных, брандмауэров.

  • Гибкость масштабирования: Увеличение мощности обычно занимает минуты.

Типы VPS:

  • Управляемый VPS: Хостинг-провайдер берет на себя администрирование сервера (установка/обновление ОС, панели управления, базовое ПО, мониторинг, резервное копирование, безопасность). Идеален для пользователей без глубоких серверных знаний. Стоимость выше.

  • Неуправляемый VPS: Провайдер предоставляет "голый" сервер. Все настройки, установка ПО, безопасность, обновления, резервное копирование — ответственность клиента. Требует системного администратора. Дешевле, но требует экспертизы.

Процесс перехода на VPS: Технически идентичен переносу на обычный хостинг (описанные выше 3 стратегии). Главные отличия:

  • Выбор и настройка VPS: Определиться с ОС (обычно Linux: CentOS, Ubuntu, Debian), установить панель управления (если нужна: cPanel, ISPmanager, Webmin/Virtualmin) или настроить сервер вручную.

  • Миграция данных: Применяется одна из стратегий (услуга миграции от провайдера VPS, плагин, ручной перенос). Учитывайте, что на VPS пути к файлам могут отличаться от виртуального хостинга.

  • Оптимизация: После переноса требуется тонкая настройка сервера (кеширование OPcache, настройка веб-сервера, PHP-FPM пулов) для максимальной производительности WordPress.

Рейтинг VPS провайдеров

RuVDS
Smartape
HandyHost
VDSina
Beget

Перенос сайта на WordPress - рутинная и хорошо отработанная процедура, главное в ней: тщательная подготовка, выбор оптимальной стратегии (услуга провайдера, плагин, ручной метод) в зависимости от сложности сайта и ваших навыков, скрупулезное тестирование на промежуточном этапе и терпение во время распространения DNS. Следуйте этому руководству и это позволит перенести сайт с минимальным риском простоев и потери данных. Помните о важности резервных копий на каждом этапе и не спешите отказываться от старого хостинга до полного завершения перехода. Удачного переноса!

Оцените статью
Хостинг для сайта
Добавить комментарий