Перенос WordPress на другой хостинг, домен или денвер. Перенос базы данных в WordPress с плагинами и без

Иногда может возникнуть ситуация, когда необходимо сайт, работающий на движке WordPress , перенести на новый домен. Т.е. суть данного действа заключается только в изменении имени домена , все содержимое же, равно как и структура ссылок, остается прежним. При этом не маловажный момент — сохранение показателей тИЦ и PR .

К данному вопросу необходимо подходить с полным пониманием дела, ибо обратное может быть чревато неприятными последствиями.

Процесс переноса можно условно разделить на 2 части:

  1. Перенос сайта, работающего на движке WordPress, на новый домен.
  2. Создание 301 редиректа со старого домена на новый.

Перенос сайта, работающего на движке WordPress, на новый домен

В самую первую очередь необходимо сделать 2 вещи:

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

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

Первый способ

Это самый простой способ, требующий от вас минимум действий.

  1. Зайдите в админ-панель вашего сайта на страницу «Настройки — Общие» .
  2. В полях «Адрес WordPress» и «Адрес сайта» укажите URL нового домена и подтвердите изменения, нажав на кнопку «Сохранить изменения» .
  3. Готово. В тот же момент WordPress переадресует вас на страницу входа в админ-интерфейс, но уже на новом домене .

Второй способ

  1. Откройте сохраненный sql-дамп базы данных в текстовом или PHP редакторе .
  2. Замените все вхождения старого адреса сайта на новый адрес , например, http://domain.ru заменить на http://newdomain.ru , и сохраните изменения.
  3. Загрузите дамп в базу данных на сервере , предварительно удалив из нее все имеющиеся таблицы.
  4. Готово. Сайт на WordPress работает по новому адресу.

Третий способ

  1. Зайдите в phpMyAdmin и выберите базу данных.
  2. Нажмите на вкладку «SQL » и поочередно выполните следующие 3 запроса, заменив http://domain.ru и http://newdomain.ru соответственно на старый и новый адреса сайта (обратите внимание, что в конце адреса не должно быть слеша ):

      UPDATE wp_posts SET guid = replace(guid, "http://domain.ru","http://newdomain.ru");

      UPDATE wp_posts SET post_content = replace(post_content, "http://domain.ru", "http://newdomain.ru");

  3. Готово. Теперь сайт будет открываться по новому адресу.

Создание 301 редиректа со старого домена на новый

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

Для этого необходимо заменить содержимое файла.htaccess , находящегося в корне старого домена , на следующее (вместо newdomain.ru указывается новый домен):

Options +FollowSymLinks RewriteEngine on RewriteRule (.*) http://newdomain.ru/$1

На этом процедуру переноса WordPress-сайта на новый домен можно считать законченной.

Теперь несколько слов относительно сохранения показателей тИЦ и PR сайта .

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

Однако открытым для меня остается вопрос переноса показателя тИЦ Яндекса . Я прочитал по этому поводу достаточно информации, но так и не нашел однозначного решения. В основном рекомендуют на старом домене создать файл robots.txt с указанием параметра Host: newdomain.ru , на это не сработает из-за 301-го редиректа.

Я был бы признателен тому, кто разъяснит мне данный вопрос.

Добавлено 24.04.2010

Сам нашел ответ на свой вопрос. Чтобы при обращении к старому домену срабатывал 301-редирект, но за исключением файла robots.txt , в файле .htaccess старого домена нужно указать следующее:

RewriteEngine off Options +FollowSymLinks RewriteEngine on RewriteRule (.*) http://newdomain.ru/$1

А в файле robots.txt указать следующее:

User-Agent: * Disallow: Host: newdomain.ru

При простом переносе файлов wordpress из одной директории в другую, сайт «ломается» — нарушается вёрстка, пропадают картинки. Данная инструкция поможет вам, если:

  • вам необходимо произвести перенос с одного домена на другой или с поддомена на основной домен;
  • вам необходимо произвести перенос с подкаталога ../domain.ru/wordpress в основной каталог ../domain.ru/ .

Перенос с одного домена на другой

В том числе, с поддомена sub.domain.ru на основной домен domain.ru .

Все действия необходимо производить в панели управления хостингом.

  1. 1 Откройте корневой каталог исходного сайта. .
  2. 2 Выделите все файлы сайта и скопируйте их в корневую папку нового сайта.
  3. 3

    При необходимости создайте новую базу данных (БД) и импортируйте в неё дамп БД исходного сайта: , .

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

  4. 4

    После импорта необходимо скорректировать адрес сайта в базе данных. Для этого откройте базу данных нового сайта в phpmyadmin . Выберите необходимую базу и перейдите во вкладку SQL . По очереди выполните следующие SQL-запросы:

    • UPDATE wp_options SET option_value = REPLACE(option_value, "http://olddomain.ru", "http://newdomain.ru") WHERE option_name = "home" OR option_name = "siteurl";
    • UPDATE wp_posts SET guid = REPLACE(guid, "http://olddomain.ru","http://newdomain.ru");
    • UPDATE wp_posts SET post_content = REPLACE(post_content, "http://olddomain.ru", "http://newdomain.ru");

    Где olddomain.ru — прежнее название сайта, а newdomain.ru — новое название сайта. Если вы используете SSL-сертификат для сайта замените http на https .

    Важно: если у вас кириллический домен, название домена в SQL-запросах необходимо вводить в формате Punycode. Для перевода кириллического домена в формат Punycode, воспользуйтесь . Например, вам необходимо перенести сайт на кириллический домен новыйдомен.ru . Название этого домена в формате Punycode выглядит так: xn--b1aedoqcfcd1k.ru . В таком случае, вам необходимо вводить SQL-запрос (на примере 2 запроса): UPDATE wp_posts SET guid = REPLACE(guid, "http://olddomain.ru","http://xn--b1aedoqcfcd1k.

    Возникла ошибка

    Если вы наблюдаете подобную ошибку: 1146 — Table "u1234567_hid5.wp_options" doesn"t exist , проверьте, существует ли такая таблица wp_options .

    Префикс таблицы может отличаться от wp , например: таблица называется xxx_options , где xxx — любой набор букв и цифр. Если префикс отличается, измените название таблиц во всех трех вышеприведенных запросах.

  5. 5 Очистите папку wp-content/cache , если у вас настроено кэширование. Перед проверкой корректности отображения сайта очистите кэш браузера.

Приветствую вас, друзья! 🙂

В предыдущих статьях я изложил всю необходимую информацию по созданию сайта на WordPress.

Мы поговорили о начальном этапе – непосредственно установке на хостинг или локальный веб-сервер. Также мы поговорили об установке графических тем и плагинов, чтобы сделать ваш сайт более презентабельным.

Полученных знаний вам должно было хватить для того, чтобы разработать сайт на WordPress.

И сегодня, как я и обещал, мы поговорим о завершающем этапе работ, необходимых для того, чтобы ваш проект увидели пользователи Интернета, а не только вы и ваши друзья на экране вашего домашнего компьютера 🙂

Те, кто внимательно читал мою , поймут, о чём я говорю.

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

Подготовка к переносу WordPress на хостинг

В ней приведёна пошаговая инструкция по выбору доменного имени и провайдера услуг, а также детально описана настройка будущего сайта на хостинге.

В качестве примера используется провайдер TheHost , услугами которого я в данный момент пользуюсь.

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

Перед этим не забудьте зайти в кабинет администратора вашего сайта и отключить установленные плагины.

Лично у меня проблем при переносе WordPress сайтов c установленными плагинами на хостинг никогда не было. И вообще я рекомендую устанавливать и настраивать их уже после переноса.

Поэтому если вы осуществляете перенос WordPress на хостинг с установленными плагинами, лучше прислушаться к мнению большинства и отключить их 🙂

Тем более, что сделать это совсем не сложно. Более подробно о данной процедуре вы можете прочитать в статье « ».

После этого заходим в phpMyAdmin или другой веб-интерфейс для работы с СУБД на вашем локальном веб-сервере:

По умолчанию на большинстве локальных веб-серверов данные для входа «root – пустой пароль».

Настройки по умолчанию можно не менять. Просто нажимаем на кнопку «ОК». В результате у вас должен был создаться sql-файл, который сохраняется в папку загрузок вашего веб-браузера, в котором вы запускали phpMyAdmin.

Теперь, чтобы перенести сайт на WordPress на хостинг, нам нужно импортировать вашу базу данных на удалённый сервер.

Для этого запускаем phpMyAdmin на хостинге. У Интернет-провайдера TheHost, где у меня есть аккаунт пользователя, запуск данной программы производится в панели управления путём выбора в главном меню «Доп. приложения — phpMyAdmin».

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

Войдя в phpMyAdmin в меню слева выбираем требуемую БД и в отрывшемся окне переходим на вкладку «Импорт»:

Нажимаем на кнопку «Выберите файл» и находим созданный вами ранее sql-скрипт.

Остальные настройки также можно не трогать. Нажимаем «ОК» и завершаем перенос WordPress с локального сервера на хостинг.

Отлично! Теперь мы рассмотрим основные способы дальнейшей настройки сайта на хостинге.

Установка WordPress на хостинг – способ первый

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

Заключается он в копировании файлов сайта с локального веб-сервера на удалённый сервер провайдера с соответствующими настройками.

Почему же я тогда рассматриваю именно перенос WordPress на хостинг?

Дело в том, что для каждой CMS и фреймворка характерен свой механизм конфигурирования, который заключается в изменении настроек конфигурационных файлов.

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

В качестве примера я сделаю перенос тестового сайта mywp.com.ua с моего локального сервера на хостинг.

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

Данные для подключения по FTP вы можете узнать у вашего хостинг-провайдера, и они, как правило, всегда указываются в инструкциях, присылаемых вам на email после регистрации.

В правой части экрана для каталога будущего сайта проверяем права на запись (должны быть «777» или «766») и устанавливаем, если они недостаточны.

В левой части экрана FileZilla переходим в каталог вашего сайта на локальном веб-сервере и копируем все файлы оттуда в папку будущего ресурса на хостинге.

После того, как копирование завершилось, переходим на сайт, введя его доменное имя в веб-браузере, и видим такую картину:

Не стоит отчаиваться, всё идёт по плану 🙂

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

Соединение с базой данных WordPress

Настройки соединения с базой данных WordPress хранятся в файле wp-config.php, который расположен в корне сайта.

Заходим в каталог сайта на локальном хостинге и копируем файл в какую-то другую папку на компьютере. Затем открываем его и редактируем содержимое:

/** Имя базы данных для WordPress */ define("DB_NAME", "MyWP"); /** Имя пользователя MySQL */ define("DB_USER", "root"); /** Пароль к базе данных MySQL */ define("DB_PASSWORD", ""); /** Имя сервера MySQL */ define("DB_HOST", "localhost"); /** Кодировка базы данных для создания таблиц. */ define("DB_CHARSET", "utf8"); /** Схема сопоставления. Не меняйте, если не уверены. */ define("DB_COLLATE", "");

Как видите, каждая строчка содержит комментарии по поводу назначения строки кода, следующего после него.

В первой строке вместо «MyWP» вводите имя вашей БД, которую вы создали на хостинге. Во второй вместо «root» нужно указать имя пользователя БД, которого вы создавали перед развёртыванием базы.

На третьей вместо пустых кавычек вводите пароль пользователя БД для подключения к базе. На четвёртой – имя сервера MySQL (в большинстве случаев будет localhost).

Пятая строка – кодировка вашей базы, которую вы указывали при создании (кодировка БД на локальном сервере, которая импортировалась на хостинг). В большинстве случаев будет такой же – utf8.

Данные в шестой строке менять также не нужно.

Сохраняете изменения и заливаете файл настроек соединения с базой данных WordPress на хостинг в корень сайта, заменяя существующий wp-config.php (если сообщения о замене файлов не появилось – вы скопировали его не туда).

Теперь можно обновить страницу сайта в веб-браузере. И что же мы видим?

Мда… Сайт выглядит, мягко говоря, непрезентабельно 🙂

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

И если локальный веб-сервер выключен, то браузер покажет нам сообщение о недоступности веб-страницы.

Если у вас эти имена совпадают, то вам повезло и никаких проблем у вас не возникнет. Не забудьте только имена БД сделать также одинаковыми.

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

Мы рассмотрим наиболее простые и популярные, из которых вы выберете наиболее подходящий именно вам.

Меняем имя сайта WordPress через админку

Вы и сами могли догадаться до этого способа изменения имени сайта WordPress через админку, если внимательно изучали меню кабинета администратора и особенно пункт «Настройки — Общие».

Запускаем локальный веб-сервер и заходим в админку WordPress. Выбираем указанный пункт и видим следующее:

Здесь нас будут интересовать поля «Адрес WordPress (URL)» и «Адрес сайта (URL)», а особенно первое из них, т.к. оно будет использоваться как корень сайта при подгрузке файлов из каталога ресурса на хостинге.

Поэтому значение поля «Адрес WordPress (URL)» и название каталога сайта на удалённом сервере должны совпадать.

Поле «Адрес сайта (URL)» пригодится для случая, когда вы захотите сделать разные адреса для админки и клиентской части ресурса или перенести WordPress на хостинг в поддомен.

Пока у нас нет такой задачи, поэтому вводим сюда те же данные, что и в предыдущее поле – «mywp.com.ua».

Сохраняем файл и не спешим закрывать данную страницу, т.к. при введённых данных попасть сюда повторно нам не получится ввиду редиректа на «mywp.com.ua» 🙂

Быстро делаем дамп базы данных (phpMyAdmin — Экспорт) и импортируем его на хостинг (если в требуемой БД уже есть информация, её нужно оттуда удалить, т.к. изменения не внесутся).

Вводим в адреcную строку «имя_сайта_на_хостинге/admin» и убеждаемся, что мы имеем к нему доступ.

На локальном веб-сервере возвращаем старые настройки и сохраняем файл, чтобы мы имели возможность работать с локальной копией.

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

Минусы данного способа налицо – придётся прыгать между админками сайта на локальном веб-сервере и хостинге. К тому же, в итоге вы можете куда-то просто не попасть 🙂

Смена имени сайта WordPress в файле конфигурации

Этот способ проще и надёжнее предыдущего и я настоятельно рекомендую пользоваться именно им при переносе WordPress на хостинг.

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

Открываем ещё раз копию этого файла, где мы прописывали настройки БД, и после строчки «define(‘DB_COLLATE’, »);» прописываем следующее:

Define("WP_HOME","http://mywp.com.ua"); define("WP_SITEURL","http:// mywp.com.ua");

Не забудьте вместо «mywp.com.ua» указать доменное имя (url) сайта на хостинге.

Сохраняем изменения и копируем файл по FTP на удалённый сервер, подтверждая замену существующего.

После этого заходим в админке на хостинге в «Настройки — Общие» и видим следующую картину:

В этой особенности данного способа и заключается его единственный минус – имя сайта через админку теперь поменять не удастся, т.к. данные в wp_config.php имеют бОльший приоритет над значениями, вводимыми через админку.

Смена имени сайта WordPress через functions.php

Если предыдущие способы вам не понравились, то вы можете произвести изменение имени сайта WordPress через файл functions.php вашей темы, который хранится по пути «корень_сайта/wp-content/themes/ваша_тема/functions.php».

Копируем его к себе на компьютер либо открываем его удалённо, если у вас есть SSH-доступ к файлам на хостинге (открыть его в редакторе админки WordPress нам пока, к сожалению, не получится)

И в самом начале прописываем следующее:

Update_option("siteurl", "http://mywp.com.ua"); update_option("home", "http://mywp.com.ua");

Также не забудьте вместо «mywp.com.ua» указать доменное имя вашего ресурса.

Сохраняем файл и для переноса WordPress на хостинг копируем его с заменой обратно на сервер (если вы не корректировали его удалённо).

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

После того, как изменения вступят в силу, удалите эти строчки из functions.php, т.к. они нам больше не понадобятся.

Минус данного способа – очередная беготня с копированием файлов, но этот недостаток несущественен. Так что данный способ можно смело брать на вооружение.

Изменение имени сайта WordPress через базу данных

Открою небольшой секрет – все предыдущие способы изменения имени сайта WordPress сводились к текущему.

Поэтому данный метод является самым верным и, что называется «прямым» 🙂

Для того, чтобы изменить имя сайта при установке WordPress на хостинг, необходимо зайти в БД на удалённом сервере, подключившись к ней через phpMyAdmin.

Выбираем требуемую базу, после чего в левой части окна программы отобразится список таблиц выбранной вами базы. О том, что такое таблицы БД, и из чего они состоят, вы можете прочитать в статье, посвящённой .

Итак, выбираем таблицу wp_options и меняем значение полей «siteurl» и «home», вписывая туда адрес своего сайта.

Эти поля соответствуют «Адрес WordPress (URL)» и «Адрес сайта (URL)».

Если не разобрались как редактировать поля в БД – небольшая подсказка: нажмите на кнопочку в виде карандашика слева от названия поля, а после сохраните изменения нажав на «ОК».

Всё, на этом перенос WordPress на хостинг подходит к концу, т.к. все необходимые настройки были нами выполнены.

Стоит отметить, что рассмотренный нами способ является универсальным для всех сайтов (отличаться будут только синтаксис и размещение файлов конфигурации).

И перед завершением статьи давайте посмотрим, как можно было осуществить настройку сайта альтернативным способом.

Перенос WordPress на хостинг – способ второй

По сравнению с предыдущим методом данный вариант переноса WordPress на хостинг является более технологичным и быстрым.

Он заключается в непосредственной установке WordPress на хостинг с дальнейшим копированием файлов сайта (за исключением файлов конфигурации сайта).

Суть данного способа состоит в том, что настройки соединения с базой данных, url сайта и прочие конфигурации создадутся автоматически на основании введённых вами данных через интерфейс установщика.

Таким образом, вы избегаете необходимости «лазить» по таблицам БД в поисках нужного поля и файлах конфигурации.

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

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

Почему же он является технологичным? Поясню.

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

Вам останется только перенести необходимые файлы на удалённый сервер – и дело в шляпе 🙂 К тому же некоторые установщики способны дополнительно упростить и без того простой процесс установки CMS на хостинг.

Отсюда значительная экономия времени и удобство переноса WordPress на хостинг данным способом.

Правда, он доступен не везде. Наличие установщика скриптов нужно узнавать у каждого хостинга индивидуально.

Например, у моего провайдера – TheHost – его нет. Вместо автоматического установщика у данного провайдера доступна услуга платной установки CMS в случае, если вы не сможете произвести её самостоятельно.

Стоимость такой услуги – 50 грн. Мелочь, а не приятно 🙂

Зато у лидера рынка хостинг-услуг России и Украины AvaHost такая услуга мало того, что бесплатна, так ещё и производится автоматически с применением установщика скриптов, о котором мы говорили ранее.

После того, как вы станете клиентом AvaHost, выбрав и заказав у них пакет хостинг-услуг, вам будет доступно для установки более 300 CMS.

К дополнительным преимуществам установщика скриптов также относится автоматизация процесса обновления версий вашего движка, который помимо запуска обновления будет делать предварительный бэкап файлов и БД, лишив вас этих хлопот 🙂

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

Если AvaHost вас заинтересовал, то у меня есть хорошая новость - это эксклюзивная 20% скидка на все услуги для друзей сайт и подписчиков. Чтобы воспользоваться ею, введите при регистрации следующий промокод - AVA-CCCPBLOG

Финальные штрихи, чтобы перенести сайт на WordPress на хостинг

Итак, ваш сайт на хостинге. Теперь остаётся ввести его доменное имя в адресной строке браузера и нажать «Enter».

Если всё прошло хорошо, вы увидите свой сайт:

Если же вы всё сделали правильно, а сайт не открылся, внимательно изучите текст ошибки, показываемой веб-браузером.

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

У хостинг-провайдера TheHost доступ к ним можно получить в панели усправления в пункте главного меню «World Wide Web — Журналы», где вас должен интересовать лог с надписью «error.log» в конце.

Там вы сможете найти информацию о компоненте, вызвавшем ошибку.

Как правило, частенько возникают проблемы из-за установленной темы WordPress или плагинов. По тексту ошибки вы можете отыскать информацию о решении проблемы в Интернете.

Если же поиски успехом не увенчались, обратитесь в тех. поддержку своего хостинг-провайдера и следуйте дальнейшим рекомендациям.

Если всё перечисленное положительного эффекта не даёт — просто откажитесь от установленного компонента, поискав ему соответствующую замену.

Жёстко, но эффективно 🙂

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

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

Возможно, вы пользуетесь методом, не описанным в статье. Тогда узнать о нём будет полезно всем читателям. Не проходите мимо 🙂

На этом всё! Всем удачи! 🙂

P.S. : если вам нужен сайт, но нет времени самостоятельно его разрабатывать, могу порекомендовать вам своего проверенного партнёра - . Было не просто, но я всё-таки выбил для вас скидку 20% , что составит до 20 тысяч рублей в зависимости от выбираемого тарифа 🙂 Вот промо код - CCCP . При заказе сообщите его и скидка вам гарантирована! Друзьям тоже можете рассказать 😉

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

Шаги переноса сайта WordPress

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

  • Сделать копию сайта;
  • Сделать дамп содержимого базы данных сайта;
  • Прикрепить домен к аккаунту на новом хостинге;
  • Создать новую базу данных на новом хостинге;
  • Импортировать базу данных;
  • Перенести каталог сайта на новый хостинг;
  • Исправить файл wp-config.php;
  • Поменять сервера доменных имен сайта (DNS);
  • Проверить новый сайт и удалить (отключить) аккаунт на старом хостинге.

Сделать копию сайта

Для начала сделаем копию сайта. Сделать это можно в панели управления хостингом (DirectAdmin, ISP панели, и т.п.) через инструмент резервного копирования. Но лучше процесс контролировать и поэтому, сделайте копию сайта вручную с помощью FTP клиента, с которым вы работаете. Рекомендую программы FileZilla или WinSCP .

Через FTP клиент перекачайте все папки и файлы вашего сайта к себе на компьютер в отдельную папку. Нужны все папки и фалы сайта, которые находятся в корневом каталоге сайта, куда устанавливали WordPress. (в корневом каталоге большинство папок и файлов должно начинаться с wp-). Скорее всего это папка public_html или httpdocs . Скачивайте всё, что есть в корневом каталоге и только из него.

Сделать дамп содержимого базы данных сайта

Перенос сайта WordPress на другой хостинг требует копии (дамп) базы данных сайта. Сделать ее можно в phpMyAdmin хостинга. Войти в него можно только из панели управления хостингом.

Для входа в phpMyAdmin понадобятся учетные данные базы данных сайта: Имя базы данных, Имя пользователя БД, Пароль доступа. Они должны быть у вас, где нибудь записаны с момента . Если нет, не беда. Их можно легко восстановить. Для этого откройте файл wp-config.php через FTP клиент или в файловом менеджере панели управления хостингом и найдите в нем следующие строки:

Define("DB_NAME", "Имя базы данных для WordPress "); define("DB_USER", "Имя пользователя MySQL "); define("DB_PASSWORD", "Пароль к базе данных MySQL ");

Учетные данные базы данных восстановлены, переходим в phpMyAdmin в панели управления хостингом.

Экспорт базы данных

С дампом (копией) базы данных следующая история. Сделать копию базы данных можно многими способами (Программа mysqldump , скрипт Sypex Dumper Lite, скрипт Staggered MySQL Dump Importer, Программа Navicat) . Но так как мы вошли в скрипт phpMyAdmin, то и будем делать копию БД при помощи инструментов php MyAdmin. Этот вариант работает, только для сайтов не гигантского объема.

В phpMeAdmin, слева выберите нужную базу данных.

Вверху жмем вкладку «Экспорт»

В открывшемся окне настроим параметры экспорта:

  • Выбираем все таблицы БД;
  • Ставим галочку «SQL» формат файла БД;
  • В чекбоксе «Упаковать» можно оставить не сжимать или сжать БД. Если предполагаемый объем БД менее 2 Мб можно не сжимать. Нужно это для последующего импорта БД. По умолчанию, максимальный размер файла для импорта 2,048МБ.
  • Нажать кнопку «ОК».

Если базу данных не сжимать, в следующем окне видим дамп своей БД.

Это текстовой файл. Выделяем содержимое файла быстрыми клавишами Ctrl+A и копируем Ctrl+C . Открываем «любимый» текстовой редактор (например, Notepad++), вставляем скопированный файл и сохраняем файл БД в формате sql (Structured Query Language). Перед сохранением проверьте кодировку файла (вкладка «Кодировка» в редакторе). Файл БД должен быть в кодировке utf-8 без BOM. Всё, дамп содержимого базы данных сделан.

Не знаю по какой причине я в 2013 году привёл такой сложный вариант Экспорта базы данных. Копия делается в три шага:

  • Откройте базу данных в phpmyadmin;
  • Не выделяя чеки у таблиц нажмите кнопку «Экспорт»;
  • Выберете сжатие базы данных (если нужно);
  • Внизу нажмите кнопку действий (вперед или ОК).
  • С картинками читать .

Переходим к работе с новым хостингом.

Прикрепить домен к аккаунту на новом хостинге

На новом хостинге пройдите все шаги по покупке хостинга от регистрации до получения учетных данных для FTP соединения и входа в панель управления хостингом. (подробно читать )

Импортировать базу данных

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

  • Войдите в панель управления хостингом;
  • Войдите в MySQL и создаете базу данных с Именем базы, Именем пользователя и Паролем доступа.
  • Далее из панели управления хостингом войдите в phpMyAdmin.

В phpMyAdmin нового хостинга нужно перенести (Импорт) содержимое своей базы данных, скаченной с старого хостинга в формате sql. Перед Импортом, настраиваем его параметры:

Проверяем название БД, выставленную кодировку utf-8 и формат SQL. Нажимаем «OK». В результате переноса вы увидите все таблицы своей БД.

Перенос сайта WordPress на другой хостинг по FTP

  • Опять открываем FTP клиент. Только теперь соединяемся с новым хостингом.
  • Переносим все ранее скачанные папки и файлы своего сайта в корневой каталог нового сайта на новом хостинге. Информацию куда устанавливать сайт найдете на новом хостинге.
  • Сайт перенесен. Нужен файл wp-config.php для редактирования.

Исправить файл wp-config.php

Для удобства редактирования файла wp-config.php скачайте его и откройте в текстовом редакторе (например Notepad++).

Важно! Не редактируйте файл config.php в блокноте Windows и в редакторах Word.

В ниже следующих строках вставьте данные новой базы данных MySQL, сделанной вами на новом хостинге.

Define("DB_NAME", "Имя новой базы данных для WordPress "); define("DB_USER", "Имя пользователя MySQL "); define("DB_PASSWORD", "Пароль к новой базе данных MySQL "); define("DB_HOST", "localhost") Это имя сервера MySQL .Может быть отличен от localchost;

Файл сохраняете, и закачивайте обратно на сайт по FTP с условием перезаписи.

В принципе сайт перенесен. Но если вы откроете его в браузере, то он откроется на старом хостинге, так как не сменены имена DNS серверов (сервера доменных имен). Чтобы завершить перенос сайта WordPress на другой хостинг, нужно поменять DNS сервера к которым прикреплен ваш домен.

Поменять сервера доменных имен (DNS) сайта

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

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

Входите в Панель управления хостингом;

Здесь ищите DNS записи доменных имен. У каждой панели это в своем месте. Найти не сложно, выглядит это так.

Интересует «Запись» «Тип» NS. Их должно быть, как минимум две. Если в записях их нет, обратитесь в тех службу хостинга, пусть сообщат. Имена DNS серверов хостинга имеют такой вид:

  • ns1.namehost.ru;
  • ns2.namehost.ru.

Далее «идете» к своему регистратору домена. Открываете управление доменом, далее выбираете нужный домен и пункт управление dns серверами или что-то похожее. И вместо DNS серверов старого хостинга прописываете DNS сервера нового хостинга.

Второй вариант если доменное имя управляется регистратором. Делаете все тоже самое, как в первом варианте, только наоборот. На хостинге в управлении DNS прописываете адреса DNS серверов регистратора.

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

По общепринятым меркам новые параметры DNS прописываются около 72 часов (обычно быстрее).

Проверить новый сайт

В течение суток периодически проверяйте, поменялись ли DNS сервера сайта. Для этого есть масса on-line инструментов (например http://www.cy-pr.com/tools/dns/ ), которые расскажут все о вашем сайте, в том числе всю информацию о DNS серверах сайта. Вот пример, как это выглядит.

Смена DNS серверов происходит от 3 часов до суток. Если адреса DNS поменялись и сайт работает на новом хостинге, можно удалять свой домен со старого хостинга. Сделать это нужно обязательно. На этом, про перенос сайта WordPress на другой хостинг все!

Ошибки переноса и их исправление

Разберем некоторые основные ошибки возникающие при переносе сайта WordPress.

Возможные ошибки

  • Пропали статьи и/или категории сайта,
  • Вместо текста крякозябры или знаки вопроса,
  • Вместо сайта надпись «Невозможно соединиться с базой, ошибка в строке 2»;
  • Белый экран, вместо сайта;
  • Ошибка на сервере Apache, порт 80.

Исправления ошибок

  • Проверьте кодировку файла БД (utf-8 без BOM),
  • Проверьте кодировку таблиц перенесенной БД (utf-8-general-ci),
  • Проверьте данные внесенные в файл wp-config.php. особо обратите внимание на название сервера MySQL. На новом хостинге он может отличаться от localhost;
  • Еще не переключились .

Фатальная ошибка

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

У многих вебмастеров и владельцев сайтов может возникнуть ситуация, когда нужно сайт перевести с одного домена, на другой. необходимо сайт, работающий на движке WordPress, перенести на новый домен. Т.е. суть данного действа заключается только в изменении имени домена, все содержимое же, равно как и структура ссылок, остается прежним. При этом не маловажный момент - сохранение показателей тИЦ и PR.

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

Есть один немаловажный момент: при переносе на новый домен, нам теперь необходимо поддерживать 2 домена — старый и новый, и перенос этот осуществляется в 2 шага:

1) копируем все скрипты WP-сайта и БД со старого домена на новый
2) делаем 301 редирект со старого домена на новый

Перенос скриптов

Есть несколько путей выполнения первого пункта переноса, для разных вебмастеров будут удобнее разные методы. Итак:

№1

Самый оптимальный способ, если мы переносим сайт на одном хостинг-аккаунте:

  1. заходим в админ-панель сайта на страницу «Настройки - Общие»
  2. в полях «Адрес WordPress (URL)» и «Адрес сайта (URL)» укажите URL нового домена и подтвердите изменения, нажав на кнопку «Сохранить изменения»

Готово. Теперь WordPress после сохранения настроек перебрасывает Вас на новый домен с уже прописанными настройками.

№2

Этот способ подходит, если мы переносим скрипты и БД в другой аккаунт хостинга или на другой хостинг:

  1. копируем скрипты WordPress на новый домен
  2. копируем SQL-дамп и открываем его в текстовом редакторе, если он не очень большой, то все пройдет более-менее просто
  3. нужно заменить все вхождения старого адреса сайта на новый, например, http://domain.ru заменить на http://newdomain.ru, и сохраните этот sql-дамп
  4. загрузите дамп в базу данных на сервере, например, через PHPMyAdmin

Готово. Сайт на WordPress работает по новому адресу. Но делать нужно аккуратно, так-как можно что-нить поломать в SQL-дампе.

№3

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

  1. копируем скрипты WordPress и SQL-дамп на новый домен/хостинг/аккаунт
  2. зайдите в phpMyAdmin и выберите базу данных нужную базу данных
  3. нажмите на вкладку «SQL» и поочередно выполните следующие 3 запроса
    UPDATE wp_options SET option_value = replace (option_value, "http://domain.ru" , "http://newdomain.ru" ) ;

    UPDATE wp_options SET option_value = replace(option_value, "http://domain.ru", "http://newdomain.ru");

    UPDATE wp_posts SET guid = replace (guid, "http://domain.ru" , "http://newdomain.ru" ) ;

    UPDATE wp_posts SET guid = replace(guid, "http://domain.ru","http://newdomain.ru");

    UPDATE wp_posts SET post_content = replace (post_content, "http://domain.ru" , "http://newdomain.ru" ) ;

    UPDATE wp_posts SET post_content = replace(post_content, "http://domain.ru", "http://newdomain.ru");

Готово. Теперь сайт будет открываться по новому адресу.

Создание 301 редиректа

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

1 2 3 Options + FollowSymLinks RewriteEngine on RewriteRule (.* ) http:// newdomain. ru/ $1 [ R= 301 , L]

Options +FollowSymLinks RewriteEngine on RewriteRule (.*) http://newdomain.ru/$1

На этом, пожалуй, и все. Процедуру переноса сайта WordPress на новый домен можно считать оконченной.

Несколько слов относительно тИЦ и PR сайта. С реализованным 301 редиректом эти показатели со временем передадутся новому домену, но будут ниже, так как редирект добавляет к параметрам сайта. Главное преимущество в том, что 301 редирект передаст все поведенческие факторы новому домену, а над позициями в поиске нужно работать всегда.