Как перенести WordPress с локального сервера на хостинг

Если сайт уже собран и работает на локальном сервере, следующий шаг обычно один: перенести его на хостинг без поломки ссылок, изображений и входа в админку. На практике ошибки почти всегда связаны не с WordPress как таковым, а с тремя вещами: путями в базе данных, адресом сайта и настройками подключения к базе на новом сервере.

Ниже — рабочий порядок переноса, который подходит для обычного сайта на WordPress. Если у вас сложная инфраструктура, нестандартный хостинг или проект с большим объёмом данных, лучше сначала сделать копию и проверить перенос на тестовом домене или поддомене.

Что нужно перенести в первую очередь

У WordPress есть две части, без которых сайт не заработает:

  • файлы сайта — ядро WordPress, тема, плагины, загрузки;
  • база данных — записи, страницы, настройки, пользователи, меню, параметры темы и плагинов.

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

Подготовка локального сайта перед переносом

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

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

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

Как перенести файлы WordPress на хостинг

Скопируйте содержимое папки сайта на локальном сервере в корень сайта на хостинге. Обычно это папка, где лежат каталоги wp-admin, wp-content, wp-includes и файл wp-config.php.

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

Особое внимание уделите папке wp-content/uploads. Именно там лежат изображения и другие загруженные файлы. Если её не перенести, сайт откроется, но медиафайлы будут отсутствовать.

Как перенести базу данных без поломки сайта

Из локальной среды нужно экспортировать базу данных и импортировать её в новую базу на хостинге. Это можно сделать через phpMyAdmin, Adminer или другой инструмент, который даёт ваш локальный сервер и хостинг.

Типовой порядок такой:

  1. экспортируете базу с локального сервера в файл .sql;
  2. создаёте новую базу данных на хостинге;
  3. импортируете туда дамп;
  4. подключаете WordPress к новой базе через wp-config.php.

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

Что изменить в wp-config.php после переноса

После загрузки файлов на хостинг откройте wp-config.php и проверьте параметры подключения к базе данных:

define( 'DB_NAME', 'имя_базы' );
define( 'DB_USER', 'пользователь_базы' );
define( 'DB_PASSWORD', 'пароль_базы' );
define( 'DB_HOST', 'localhost' );

Значение DB_HOST зависит от хостинга. На большинстве площадок это localhost, но иногда хостер указывает отдельный адрес сервера базы данных. Берите его из панели хостинга, а не угадывайте.

Если после переноса сайт выдаёт ошибку подключения к базе, сначала проверяйте именно эти четыре параметра. Чаще всего проблема не в WordPress, а в неверном имени базы, пользователе или пароле.

Замена локального домена на адрес хостинга

Самая частая ошибка после переноса — сайт открывается, но часть ссылок ведёт на локальный адрес вроде http://localhost/wordpress или http://site.test. Это происходит потому, что WordPress хранит адрес сайта в базе данных.

Нужно заменить старый локальный адрес на новый домен в таблице настроек и в содержимом записей, если там есть абсолютные ссылки. Делать это нужно аккуратно, потому что в базе могут быть сериализованные данные. Простая замена через текстовый редактор или SQL REPLACE() без понимания структуры может сломать настройки плагинов и темы.

Безопасный вариант — использовать инструмент, который умеет корректно менять URL в базе WordPress. На практике это можно сделать через WP-CLI, если он доступен на хостинге, или через специализированный плагин миграции. Если таких инструментов нет, можно заменить адрес вручную в базе только в тех таблицах и полях, где вы точно понимаете формат данных, но это уже рискованнее.

Если у вас есть доступ к WP-CLI, команда для замены домена выглядит так:

wp search-replace 'http://site.test' 'https://example.com' --skip-columns=guid

Здесь важно два момента. Во-первых, старый и новый адрес должны совпадать с реальными значениями на вашем сайте. Во-вторых, параметр --skip-columns=guid обычно используют, чтобы не переписывать GUID записей. Это стандартная практика при миграции WordPress.

Если WP-CLI недоступен, используйте плагин или инструмент хостинга, который умеет делать корректную замену URL в WordPress. Не стоит заменять адрес через обычный SQL-запрос по всей базе: он не учитывает сериализацию.

Проверка адресов сайта в настройках WordPress

После замены домена зайдите в админку и проверьте Настройки → Общие. Поля Адрес WordPress (URL) и Адрес сайта (URL) должны указывать на новый домен. Если админка ещё не открывается, эти значения можно временно задать в wp-config.php:

define( 'WP_HOME', 'https://example.com' );
define( 'WP_SITEURL', 'https://example.com' );

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

Что проверить сразу после переноса

После загрузки файлов, импорта базы и замены домена не ограничивайтесь открытием главной страницы. Проверьте несколько типовых сценариев:

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

Отдельно проверьте постоянные ссылки. Если страницы открываются с ошибкой 404, зайдите в Настройки → Постоянные ссылки и просто сохраните их ещё раз без изменения структуры. Это обновляет правила перезаписи на сервере. На Apache для этого должен работать .htaccess, а на Nginx нужны корректные правила в конфигурации сервера. Если хостинг настроен неправильно, WordPress сам это не исправит.

Типичные проблемы после переноса и как их искать

Если сайт после переноса ведёт себя странно, сначала разделяйте проблему по слоям.

Сайт не открывается вообще. Обычно это ошибка подключения к базе, неверный wp-config.php, отсутствующие файлы или неправильный корень сайта на хостинге.

Открывается только главная страница, а внутренние дают 404. Чаще всего проблема в правилах постоянных ссылок или конфигурации веб-сервера.

Часть ссылок ведёт на локальный адрес. Значит, замена URL в базе выполнена не полностью или выполнена небезопасно.

Не грузятся картинки. Проверьте, перенесена ли папка uploads, совпадает ли путь к ней и не остались ли старые абсолютные ссылки в содержимом записей.

Админка открывается, но некоторые плагины работают не так, как на локальном сервере. Это может быть связано с версией PHP, расширениями сервера, лимитами памяти или различиями в настройках хостинга. Локальная среда и продакшен редко совпадают полностью.

Когда удобнее использовать плагин миграции

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

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

Короткий порядок действий, если нужен рабочий перенос без лишних шагов

Если свести процесс к минимальному рабочему сценарию, он выглядит так:

  1. сделать резервную копию локального сайта;
  2. перенести файлы WordPress на хостинг;
  3. создать и импортировать базу данных;
  4. обновить данные подключения в wp-config.php;
  5. заменить локальный URL на домен хостинга безопасным способом;
  6. проверить главную страницу, внутренние ссылки, изображения и вход в админку;
  7. при необходимости пересохранить постоянные ссылки.

Если на каком-то этапе сайт ломается, не пытайтесь сразу исправлять всё подряд. Сначала определите, где именно проблема: в файлах, базе, домене или серверной конфигурации. Такой подход экономит время и не приводит к лишним правкам в рабочем проекте.

Как создать дочернюю тему WordPress и зачем она нужна
30.10.2026
Как перенести WordPress с локального сервера на хостинг
18.10.2026
Как создать кастомный виджет в WordPress: пошаговое руководство
02.10.2026
Как установить WordPress на локальный сервер и начать разработку сайта
15.10.2026
×

AI-плагин

WPGPT
Сам создает статьи для вашего сайта WordPress

SEO и мета-теги

Парсинг конкурентов

Изображения

Комментарии

Подробнее