Рубрики
WordPress Веб-мастеринг Настройка

Как перенести сайт WordPress на другой хостинг.

Содержание:

Предположим, что мы переносим сайт с одного хостинга на другой причем со сменой домена. Изначально сайт располагался на домене wp1.ru, а переносим его на домен wp2.ru. Перед началом необходимо иметь следующие данные: адрес, логин и пароль сервера MySQL на старом и новом хостинге + адрес, логин и пароль FTP-сервера на старом и новом хостинге.

Бэкап базы данных

Бэкап можно осуществить двумя способами:

  • Из панели управления WordPress с помощью плагина WP-DBManager.
  • Из панели управления хостингом с помощью phpMyAdmin.

Здесь будет рассмотрен только второй вариант, как наиболее надежный. К тому же phpMyAdmin придется пользоваться при импорте базы на новом хостинге.

Итак, заходим в панель управления старого хостинга, находим ссылку на phpMyAdmin, вводим логин и пароль, в конце-концов попадаем на главную страницу phpMyAdmin.

В столбце слева необходимо выбрать базу данных вашего сайта. Далее появится страница со списком таблиц базы данных. В верхнем меню переходим на закладку Экспорт.

Экспорт БД WordPress (1)
Экспорт БД WordPress (1)

Настройки экспорта:

Экспорт БД WordPress (2)
Экспорт БД WordPress (2)

Практически все параметры оставляем без изменений. Единственно рекомендую отметить опцию «Сохранить как файл» + «Упаковать в zip». После нажатия кнопки Ок, сохраняем файл к себе на локальный компьютер.

Обратите внимание, что мы экспортируем только таблицы, а не базу целиком. Это удобнее, т.к. хостеры практически всегда создают базы данных со своими префиксами, и при переносе БД на новый хост имя базы меняется.

Бэкап файлов

Здесь все просто с помощью ftp-клиента копируем все файлы WordPress на локальный компьютер.

Перенос базы данных на новый хост

Сначала необходимо создать базу данных. Здесь возможны варианты. Некоторые хостеры позволяют создавать БД и пользователей только из панели управления, другие же предоставляют эту возможность из phpMyAdmin. Предположим, что наш новый хостер относится ко второй группе.

Заходим в phpMyAdmin на новом хостинге и создаем базу данных. Поле Сравнение можно оставить без изменений:

Создание БД
Создание БД

Создаем отдельного пользователя БД (если требуется и если провайдер хостинга позволяет). Для этого открываем только что созданную базу, в верхнем меню переходим на закладку Привилегии, далее «Создать нового пользователя»:

Создание пользователя
Создание пользователя

Придумываем имя пользователя, пароль (не менее 6 символов). В разделе «База данных для пользователя» отмечаем пункт «

Теперь переходим к импорту таблиц. База должна быть выбрана. В верхнем меню переходим на закладку Импорт:

Импорт таблиц
Импорт таблиц

Выбираем файл, который был создан при экспорте из старой БД (можно отправлять сразу zip-архив). Нажимаем Ок. Если все прошло успешно, вы увидите надпись: «Импорт успешно завершен, запросов выполнено: » и в левой колонке появится список таблиц.

Т.к. мы выполняем переход на другой хостинг со сменой доменного имени, то в таблице wp_options необходимо поменять значения двух параметров: siteurl и home.
Открываем таблицу wp_options, ищем запись со значением siteurl в колонке option_name. Для изменения записи нажимаем на «карандаш»:

Редактирование записи в таблице БД (1)
Редактирование записи в таблице БД (1)

Изменяем поле option_value. Старое значение http://www.wp1.ru заменяем на новое http://www.wp2.ru и нажимаем Ок:

Редактирование записи в таблице БД (2)
Редактирование записи в таблице БД (2)

Таким же образом изменяем значение параметра home.

Перенос файлов на новый хост

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

  • DB_NAME — имя БД
  • DB_USER — имя пользователя
  • DB_PASSWORD — пароль пользователя
  • DB_HOST — адрес/имя сервера БД

на новые.

После того как данные для подключения к новому серверу БД сохранены, с помощью ftp-клиента закачиваем файлы сайта на новый хостинг. После закачки сайт должен корректно работать на новом хостинге под новым доменным именем.

Завершающий этап

У WordPress есть особенность — по умолчанию все картинки вставляются с использованием абсолютного пути (с именем домена). Из-за этого при переносе сайта на другой домен картинки перестают работать. Проблему можно решить просто и быстро с помощью плагина Search and Replace.
После активации плагина переходим на страницу настроек. В разделе Search In (где искать),  ставим галочку напротив Content (поиск по содержанию всех страниц и постов). В поле Replace (это значение ищем и заменяем) вписываем старый домен. В поле with (значение для замены) вписываем новый домен. И нажимаем Go.

Search and Replace
Search and Replace

Статьи по теме:

62 ответа к “Как перенести сайт WordPress на другой хостинг.”

Все настройки подключения к БД указаны в файле wp-config.php.
Этот файл находится в корневой папке установки WordPress.

Посмотрите эти файлы либо через файл-менеджер в панели управления хостингом, либо через ftp. Тогда будет ясно какой адрес у сервера БД, имя базы для каждого из сайтов.

Такое очень возможно, хотя встречается все реже и реже.
Также возможен вариант с файловой базой данных SQLite.
В общем вариантов много.

В на каком движке сделаны ваши сайты?
У меня ощущение, что не на WordPress… )

К сожалению я не нашла префикса. Все папки в одном экземпляре и никаких пометок нет. Как все же найти мне папки нужного сайта. Помогите. Спасибо.

У меня на хосттинге два сайта. У одного сайта таблицы базы данных есть, а у другого нет.Почему? Вы не можете мне подсказать? Спасибо. А статья Ваша супер. Взяла к руководству.

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

У меня вот тоже проблема , сайт перенес все сделал как написано с одной раздницей домен остался прежний просто на новый аккаунд на том же самом хостинге сайт перенес, вобщем такая фигня главная страница грузится отлично все что там было все на месте все работает но при входе в рубрики или страницы они не открываются пишет несуществует как быть? помогите пожалуйста а то сайт большой год в него вложил жизни жалко его терять.

Для начала зайдите в Параметры -> Постоянные ссылки -> Сохранить изменения. Потом опять попробуйте открыть какую-нибудь страницу.

Переносил сайты, но в первый раз столкнулся с неявной проблемой. Зайти в админку вордпресса по новому адресу можно, а при заходе на сам сайт браузер выдает ошибку: невозможно отобразить стралницу из-за большого количества перевдресаций? Подскажите пожалуйста, в чем проблема? Я все излазил, все верно.

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

Они и стоят по умолчанию. С новым адресом сайта. Ничего не менялось..

Ну так поменяйте на любой другой вариант и, самое главное, сохраните изменения. Это было сделано?

Проблема только с главной или со всеми страницами?
Дайте ссылку на сайт, хочу глянуть своими глазами )

Сайт заработал!

Проделал аккуратно все описанное в статье.

После чего отключил все плагины.
Установил плагин:

Permalink Fix & Disable Canonical Redirects Pack

Потом включил все плагины.

И сайт стал работать)))) Я счастлив!!!

Товарищи! Будьте добры, объясните подробнее «Таким же образом изменяем значение параметра home» уже 10й сайт читаю и везде одно и тоже: » home изменяем аналогично» Где искать этот home? ума не приложу…Надеюсь на помощь

Переменная home ищется там же где и siteurl — в базе данных, в таблице wp_options. Если siteurl обычно на первой странице, то home — на второй.

Если же слово PhpMyAdmin вам ничего не говорит, то есть еще один вариант, как поменять эти переменные без непосредственного доступа к БД.

Откройте wp-config.php для редактирования и после стороки:

define ('WPLANG', 'ru_RU');

добавьте

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

Вместо http://example.com вставьте адрес своего сайта.

Теперь зайдите в панель управления в Парметры -> Общие
и измените поля «Адрес WordPress» и «Адрес сайта».
После этого, можно убрать те две новый строчки из wp-config.php

Ой, спасибо большое. Я даже не обратила внимание, что страниц несколько :) Я обычно переносила джумлу, там нет таких сложностей, все настройки меняются в configuration.
p.s. Добавила в закладки

Спасибо за статью, очень помогла :-)
Переносил БД и замучался с ошибками.. теперь все понятно в чем была проблема :-)

Спасибо за статью :) очень помогло при переезде с локалхоста.
Еще надо было поправить строки в recently_edited для полноты картины и все.
2 darmoid — для перевоза больших баз данных или при проблемах с кодировкой очень помогает скрипт Dumper

Мне вообще кажется, что параметр recently_edited при переносе лучше просто очистить (поставить ему NULL).

За ссылку на Dumper спасибо! Полезно.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *


Срок проверки reCAPTCHA истек. Перезагрузите страницу.