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

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

Для чего вам может потребоваться перенос сайта WordPress на другой домен:

  1. Например вы разработали какой-либо проект, который у вас работает, приносит вам удовольствие и заработок. Проходит какое-то время и вы понимаете что проект нужно улучшать, обновлять, изменять. При этом делать это на хорошо отлаженном сайте опасно, для этого следует завести другой домен или поддомен и тестировать всё новое на нём.
  2. Так же бывает, что вас забанил какой либо поисковик, например вы попали в «Баню» Яндекса. Тогда в бесконечных попытках от туда выплыть вы регистрируете еще один домен и переносите ваш WordPress туда.
  3. Был у вас сайт vasy.ru и как то вечером, после программы «Вести» вы решили что хочеться домен вася.рф. И снова вы ставите задачу по переносу вашего сайта на другой домен в зону рф.
  4. Бывают и другие причины переноса сайта, но это уже на усмотрение читателя.

И так, что понадобится для переноса сайта на WordPress

  1. FTP доступ к старому сайту/домену
  2. FTP доступ к новому сайту/домену
  3. Phpmyadmin досуп к старому сайту/домену
  4. Phpmyadmin досуп к новому сайту/домену
  5. Редактор файлов, что то вроде «Notepad++» или любой IDE PHP(например netbeans). Этот пункт актуален если вы делаете действия по редактированию файлов на вашем ПК.
  6. Доступ к панели управления хостингом, если там есть интрументы для работы через WEB(файловый менеджер, редактор файлов, Phpmyadmin) — тогда первые 5 пунктов вам не нужны.

Последовательность действий:

  1. Сделаете 2-е полных копии работающего сайта к себе на ПК (сделайте это в две разные папки)
  2. Сделайте копии базы данных с работающего сайта
  3. Открываете 1 копию и далее работаете только с ней, вторая копия вам нужна будет что бы не качать по ftp повторно работающий сайт, если вы вдруг не так что-то сделаете.
  4. Откройте на редактирование файл function.php своей темы и впишите туда следующие строчки

update_option("siteurl","http://ваш новый домен.ру"); update_option("home","http://ваш новый домен.ру");

update_option ("siteurl" , "http://ваш новый домен.ру" ) ;

update_option ("home" , "http://ваш новый домен.ру" ) ;

Эти две строчки при открытии нового сайта пропишут необходимый домен в базе данных нового сайта.

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

Работа с базой данных:

  1. При помощи Phpmyadmin залейти базу с старого сайта, в базу нового сайта. База нового сайта при этом должна быть пустой (не содержать таблиц)
  2. Пропишите в файле wp-config.php нового сайта, параметры подключения к БД

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

После всех проделанных действий, по FTP закачайте изменённую копию старого сайта на на новое место.

Попробуйте зайти в админку нового сайта http://новый сайт.ру/wp-admin/

Всё получилось, тогда установите плагин «Better Search Replace от Автор: Expanded Fronts» — при помощи него вы сможете заменить в базе нового сайта все вхождения «http:// старый сайт.ру » на «http://новый сайт.ру «. После этого переезд можно считать успешным.

Конечно есть разного рода форсмажорные обстоятельства, которые выходят за рамки данного материала. Перечислю некоторые из них:

  1. Имена изображений на новом сайте стали крокозябрами. Причинам может быть в том что при FTP передаче нужно принудительно установить кодировку соединения. Актуально если на старом сайте, активно использовались кирилические символы в название файлов.
  2. Не получается загрузить старую базу на новое место, так как есть ограничения по размеру загрузки. Тут вариант, либо меняйте ограничение(если хостинг позволяет) либо делите базу на части.
  3. После загрузки вы обновили плагины на новом сайте и сайт стал работать не корректно. Возможно в коде темы у вас появились устаревшие функции, которые больше не используются в новых плагинах. Ищите какие функции устарели, меняйте их на новые.

Так же посмотрите отличную по переносу WordPress на другой домен.

Сегодня я расскажу о переносе сайта на WordPress с хостинга на хостинг или c хостинга на денвер, а так же на новый домен или в другую папку.
Содержание статьи:

Почему возникает проблема переноса WordPress сайта

Рано или поздно каждому из нас приходится столкнуться с переездом, для этого существует ряд причин. Самая распространенная из них – недовольства хостингом, когда терпеть уже нет сил, начинаешь думать о смене хостинг-провайдера. Хотя в этом случае проще оставить заявку в техподдержку на перенос вашего сайта (любой приличный хостинг предоставляет такую услугу бесплатно). Мне приходилось менять хостинг сотню раз, пока однажды, наконец, не повезло, теперь я пользуюсь хостингом и вам советую.

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

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

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

1. Скачиваем файлы сайта и базу данных со старого хостинга

Способ №1:

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

Чтобы попасть в эту папку, можно зайти по FTP (я использую программы Total Commander или File Zilla) или через файловый менеджер хостинга (этот способ удобнее, как мне кажется). Скачайте полученные архивы к себе на компьютер. Распакуйте базу данных.

Если по какой-то причине вы не смогли сделать бэкапы, существует второй способ:

Далее зайдите в раздел управления базами данных вашего хостинга, выберите phpMyAdmin. В колонке слева выберите название вашей базы данных из списка. Перейдите на вкладку Экспорт (Export) и щелкните Ок(Go). Сохраните сгенерированный файл.

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

2. Перенос данных с компьютера на новый хостинг

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

Внимание! Если вы так же меняете доменное имя, то сейчас необходимо выполнить пункт « », затем вернитесь и продолжайте по порядку.

Откройте phpMyAdmin, найдите в списке слева вашу базу данных, перейдите на вкладку Импорт (Import). Закачайте ранее скачанный на компьютер дамп базы данных с разрешением.sql и нажмите ОК (Go).

Теперь залейте архив с файлами на ftp и разархивируйте его. Следите, чтобы в итоге файлы оказались в правильной папке, на моем хостинге это папка public_html, так же она может называться httpdocs, www или иначе, в зависимости от хостинга. Проверьте, чтобы эта папка была пустой, прежде чем распаковывать в нее архив.

3.Настройка соединения с базой и установка прав

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

/** Имя базы данных для WordPress */ define("DB_NAME", "имя_вашей_базы_данных"); /** MySQL имя пользователя */ define("DB_USER", "имя_пользователя_базы_данных"); /** MySQL пароль базы данных */ define("DB_PASSWORD", "пароль_к_базе_данных");

Установите права (атрибуты) 777 для папки wp-content/uploads и всех вложенных папок. Это делается по ftp или в файловом менеджере:

Привязка вашего домена к новому хостингу

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

  • Узнайте у нового хостера его DNS сервера. Обычно они написаны в письме, отправленном вам на почту при регистрации хостинга.
  • Зайдите в личный кабинет своего регистратора доменов — сайт, где вы покупали домен. Я пользуюсь 2domains.ru и расскажу, как это делается там. Найдите раздел «Управление DNS-серверами» и измените DNS-сервера на новые:

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

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

Перенос WordPress на другой домен, папку

Если помимо хостинга, вам нужно перенести сайт на другой домен, придется столкнуться с некоторыми сложностями. В отличие от большинства CMS, в вордпрессе все пути прописаны абсолютными ссылками (это неприятный минус системы) и нам предстоит бороться с ними вручную. Давайте по порядку:

1. Работа с базой данных

Когда вы скачали дамп базы данных со старого хостинга, надо открыть ее в редакторе (я пользуюсь Dreamweaver) и заменить все упоминания о старом домене на новые:

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

UPDATE wp_options SET option_value = REPLACE (option_value, "https://old_domain.ru", "https://new_domain.ru") WHERE option_name = "home" OR option_name = "siteurl";

UPDATE wp_posts SET guid = REPLACE (guid, "https://old_domain.ru", "https://new_domain.ru");

UPDATE wp_posts SET post_content = REPLACE (post_content, "https://old_domain.ru","https://new_domain.ru");

2. Изменения в.htacces и robots.txt

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

3. Изменения в файлах сайта

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

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

Перенос сайта в другую папку

Если вам нужно перенести блог в другую папку (например, domain.ru/blog), внесите следующие изменения в.htaccess (изменения выделены жирным):

# BEGIN WordPress
RewriteEngine On
RewriteBase /blog /
RewriteRule ^index\.php$ — [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /blog /index.php [L]
# END WordPress

Возможные ошибки, связанные с переносом WordPress блога

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

  1. Error establishing a database connection. Такая ошибка случается, если неверно введены данные вфайле wp-config.php.
  2. Открылась страница с установкой WordPress. Подобная ситуация могла возникнуть из-за ошибки импорта базы данных. Попробуйте удалить все таблицы базы и заново импортировать дамп.
  3. Вы видите страницу вашего хостинг-провайдера с приветствием. Причиной может стать то, что вы не очистили папку public_html (httpdocs), прежде чем распаковать в нее архив. Удалите файл index.html.
  4. Forbidden. You don"t have permission to access / on this server. Возможно, вы залили файлы сайта в неправильную папку.

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

Скажите, а сколько способов переноса сайта вы знаете? Я расскажу о трех, каждый из которых имеет свои преимущества и недостатки, узнав которые, перенос сайта wordpress на другой хостинг будет максимально прост и понятен.

Данную статью я разделяю на 2 части:

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

2. Перенос сайта wordpress на другой хостинг (Таймвеб).

1. Перенос wordpress сайта на другой домен

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

Смысл переноса Интернет-проекта на другой домен обретает лишь при его покупке. Либо, если вы спохватились и решили переименовать свой Интернет-ресурс. В принципе, разницы нет, когда вы хотите менять имя , так как можно поставить и все его показатели (домена) перейдут на новый, но об этом позже.

Собственно, сама сложность и состоит в том, чтобы показатели старого домена ( и Pr) плавно перетекли на новый.

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

Итак, первое, что нужно сделать перед началом переноса:

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

Теперь нам нужно в самой базе данных изменить все ссылки типа http://domain.ru заменить на http://newdomain.ru . Иначе все картинки и страницы интернет-ресурса будут ссылаться на новый домен. Далее я Вам приведу три способа как это сделать:

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

Данный способ подойдёт для пустого сайта, либо созданного на локальном сервере, так как мы изменяем только siteurl и home, а ссылки в меню, адреса картинок не изменяются.

Этот способ самый простой, но я его узнал позже других:).

1). Зайдите в административную панель вашего блога, нажмите на пункт «Настройки»--->"Общие" .

2). В полях «Адрес WordPress (URL)» и «Адрес сайта (URL)» вставьте адрес нового домена и нажмите кнопку "Сохранить изменения " . После чего Вордпресс вас сразу же переадресует на страницу входа на новом домене.

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

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

1). Экспортируйте базу данных себе на компьютер. Формат должен быть "SQL " .

2). Откройте файл (дамп) базы данных в формате sql через любой PHP редактор, я рекомендую воспользоваться программой notepad++ , которую можете .

3). Теперь замените все старые URL-адреса в базе данных на новые, для этого в notepad++ нажмите ctrl+f и в всплывающем окне выберите пункт "Заменить " , далее вводите в пункт "Найти " существующий URL, в пункте "Заменить на " — новый URL-адрес.

4). Удалите старую базу данных и импортируйте новую, после этого сайт будет открываться по новому адресу.

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

Наилучший вариант, среди перечисленных.

1). Откройте phpMyAdmin, нажмите на редактируемую базу данных.

2). Нажмите на пункт "SQL " и выполните 3 запроса, заменяю адрес старого домена на новый. Запросы вводите поочередно.

  • UPDATE wp_options SET option_value = replace (option_value, "http://domain.ru", "http://newdomain.ru") WHERE option_name = "home" OR option_name = "siteurl";
  • 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");

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

Options +FollowSymLinks
RewriteEngine on

Данная директива способствует переносу Pr со старого домена на новый.

В некоторых случаях закрадываются в файлах Интернет-проекта на старый домен, которые исправить можно только вручную. Для этого можно использовать notepad++, проверить файлы сайта и заменить как описано в способе №2.

Для переноса Тиц необходимо :

1). В файле.htaccess вставить следующее:


RewriteEngine off

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

2). В файле robots.txt вставить следующее:

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

Всё, теперь Тиц и Pr вашего старого домена со временем перейдут на новый домен.

2. Перенос сайта wordpress на другой хостинг

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

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

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

Итак, начнём:

1). Делаем архив всех файлов сайта . Для этого существует раздел "Файловый менеджер « , далее открываете папку с вашим Интернет — проектом и заходите в его корень. Что такое корень сайта можете . Далее нажимаете на вкладку „Правка“--->»Выделить всё" .

После выделения нажмите "Архиватор--->Архивировать " . После чего вам предложат выбрать тип архива, выбирайте rar или zip и нажмите "Упаковать " , через некоторое время будет создан архив с выбранными параметрами. Последний штрих — кликните два раза левой кнопкой мыши по архиву, после чего начнётся его скачивание на компьютер.

2). Экспортируем базу данных себе на компьютер . Для этого ищем пункт "Базы данных MySQL " , нажимаем. Перед вами откроется список всех баз данных. Нажимаем на в базе данных, которую мы хотим скачать себе на компьютер.

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

3). Импорт базы данных на сервер (хостинг) . Перед тем как это сделать вам нужно создать новую базу данных на хостинге, на который перемещаете сайт. Для этого зайдите в раздел "Базы данных MySQL " . Там увидите строку создания новой базы данных. Введите желаемое имя базы данных и пароль.

После этого зайдите в как было описано в пункте 2, но теперь нам нужно нажать кнопку "Импорт " , выбрать базу данных переносимого Интернет-проекта и нажать кнопку "Ок " .

4). Редактирование файла wp-config.php .

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

Ниже в скриншоте я выделил строки, которые нужно заменить. Название базы данных WordPress, имя пользователя MySQL, пароль MySQL — всё это мы с вами создали в предыдущем пункте.

Единственная сложность — определить хост MySQL. В Таймвебе — это всегда "localhost " , в других хостингах может быть соответственно другое название хоста. Но во всяком случае — вам должно быть выслано письмо на электронный ящик с параметрами вашего доступа как по FTP, так и напрямую, через сайт хостинга. Если вам ничего не пришло — обратитесь в службу поддержки сервера (хостинга), а быть может все настройки вы можете увидеть в своём личном кабинете.

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

Хорошо, когда вы заполните необходимые строки — замените старый wp-config.php в архиве на новый.

5). Загружаем все файлы сайта на новый сервер (хостинг) . Также как и в пункте 1, заходим в "Файловый менеджер " , открываем папку, в которую хотим закачать архив сайта, нажимаем «Файл» ---> "Закачать " , выбираем архив и нажимаем "Закачать " .

После того как архив будет скачан на хостинг (сервер) нажимаем на него и выбираем пункт меню "Архиватор " ---> "Разархивировать " .

6). Размещение домена на хостинга (сервера) . Для этого в Таймвебе вам нужно будет нажать на пункт "Управление доменами " . Далее нажмите "Разместить на NS серверах " .

1. Прописать название и выбрать зону, в котором он находится (ru, com и т.д.)

2. Выбрать директорию (папку), где находится сайт (где распаковали архив с сайтом).

3. Нажать на кнопку "Перенести домены на NS-сервера TimeWeb " .

7). Прикрепляем (прилинковываем) домен к корневой папке сайта . Т.е. к папке, где находится Интернет-ресурс. Для этого нажимаем на пункт "Управление сайтами " в личном кабинете хостинга Таймвеб. После этого выбираем домен и директорию, где находится сайт, нажимаем "Привязать домен к сайту " .

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

Если есть какие мысли по статье — пишите в комментариях.

Р/S

С уважением, Александр Сергиенко

  • Tutorial

Каждый веб-разработчик регулярно сталкивается с задачей миграции. Сюда входят и развёртывание (deploy) локальной версии на удалённом сервере, и перенос работающего сайта с одного сервера на другой. Некоторые печатные издания для программистов называются «Cookbook» – что буквально значит «книга рецептов». Рецептов множество, какой из них лучший - дело вкуса. В этом материале автор расскажет о том, какую технологию переноса типичного сайта на WordPress он считает оптимальной, и почему.

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

Резервное копирование данных

С технической точки зрения нам предстоит сделать копии двух составляющих сайта:
  • Файловой системы
  • Базы данных
Каждый веб-разработчик должен заботиться о сохранности данных веб-сайта. Поэтому, как правило, после того как рабочая версия развёрнута на удалённом сервере, разработчик сайта настраивает резервное копирование данных или «бэкап» (от англ. «backup copy», резервная копия).

Иногда заботу о создании резервных копий проявляется хостинг-компания. Чаще всего это случается, когда вы пользуетесь услугой простого хостинга сайтов.

В чём главная цель разработчика при переносе сайта с одного сервера на другой? Ничего не потерять. То есть на новом месте сайт должен быть полностью идентичен тому же сайту на старом.

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

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

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

Режим обслуживания

Вы могли заметить, что когда WordPress обновляет плагины или ядро системы, посетители сайта видят вместо его содержимого белый фон и поверх большой заголовок «Сайт ненадолго закрыт на техническое обслуживание. Зайдите через минуту. ».

Как принудительно перевести в него сайт?

Для этого необходимо в корне сайта создать файл под названием.maintenance и разместить в нём следующий PHP-код:

Результат:

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

Однако, если вы хотите сделать страницу более привлекательной, можете создать в папке wp-content файл maintenance.php , который будет загружаться вместо исходного текста. В нём вы можете сверстать какую угодно картинку для поджидающего окончания работ пользователя.

Также можно порекомендовать специальный плагин , которые можно использовать в тех же целях:

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

Резервная копия базы данных

Способов создания резервной копии базы данных WordPress существует несколько:
  • При помощи плагинов WP-DB-Backup , WP Database Backup и прочих.
  • При помощи браузерной утилиты phpMyAdmin
  • При помощи консоли сервера
  • При помощи панели хостинга
С целью экономии места в посте не буду рассказывать про первые два способа, они достаточно тривиальны.

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

Прежде всего потому, что создании резервной копии выполняется одной единственной командой:

Mysqldump -u[пользователь] -p[пароль] [имя_базы_данных] > [имя_файла_резервной_копии].sql

По-хорошему будет заархивировать дамп базы на ходу:

Mysqldump -u[пользователь] -p[пароль] [имя_базы_данных] | gzip >[имя_файла_резервной_копии].sql.gz

Текстовые файлы, коим является дамп базы, архивируются наилучшим образом. Размер архива может быть значительно ниже размера дампа базы. Это важно при переносе, т.к. 100Мб перенести куда быстрее, чем 1Гб, например.

Некоторые хостинг-компании предоставляют возможность архивирования данных сайта через панель управления услугами:


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

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

Резервная копия файлов

Файловая система WordPress обычно выглядит следующим образом (без поддиректорий и их содержимого):
├── index.php ├── license.txt ├── readme.html ├── wp-activate.php ├── wp-admin ├── wp-blog-header.php ├── wp-comments-post.php ├── wp-config-sample.php ├── wp-config.php ├── wp-content ├── wp-cron.php ├── wp-includes ├── wp-links-opml.php ├── wp-load.php ├── wp-login.php ├── wp-mail.php ├── wp-settings.php ├── wp-signup.php ├── wp-trackback.php └── xmlrpc.php

В принципе, больше всего нас интересуют папка wp-content и конфигурационный файл wp-config.php .

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

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

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

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

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

Так можно использовать консольные утилиты наподобие rsync , но для этого необходимо иметь навыки работы с консолью севера. Несколько обучающих материалов по теме на англ. - одна и вторая .

Восстановление данных

Итак, архив файлов сайта и дамп базы данных перенесены на новый сервер.

Воссоздание файловой структуры

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

Чтобы восстановить исходную структуру и не напортачить с папками, необходимо руководствоваться следующим правилом:

Распаковывать архив необходимо там же, где он был создан.

Например, если вы сжимали сайт при помощи консольного архиватора из корня сайта zip -r "full-backup.zip" * , то и распаковывать на новом сервере его необходимо также в корне сайта unzip full-backup.zip .

Обратите внимание , что невидимые файлы, коим является.htaccess не всегда архивируются вместе с остальными. Поэтому, если на вашем новом сайте не работают «красивые адреса», первым делом проверьте, перенесли ли вы.htaccess в корень сайта.

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

Воссоздание базы данных

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

Если же её ещё нет, то создать новую базы данных можно разными способами:

  • Через веб-интерфейс при помощи утилиты phpMyAdmin
  • Через панель управления хостингом
  • Через консоль сервера следующей командой: mysql -u[имя_пользователя] -p; # после ввода пароля вы войдете в режим командной строки MySQL mysql: CREATE DATABASE [имя_базы_данных] CHARACTER SET utf8 COLLATE utf8_general_ci; CHARACTER SET utf8 COLLATE utf8_general_ci; CHARACTER SET utf8 COLLATE utf8_general_ci; GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, ALTER ON[имя_базы_данных] .* TO [имя_пользователя]@localhost IDENTIFIED BY "[пароль]";
В результате мы должны иметь на руках:
  • Имя базы данных
  • Имя пользователя
  • Пароль
В некоторых случаях, когда база данных находится на другом сервере, нам необходимо ещё знать адрес хоста (обычно - localhost , если на той же машине).

Используя эти данные мы должны импортировать наш дамп базы данных.

Опять-таки, сделать это мы можем теми же средствами.

В phpMyAdmin выбираем базу данных, вкладку «Импорт», выбираем файл дампа и отправляем форму запроса.

Если вы работаете через консоль, используйте команду mysql -u[имя_пользователя] -p[пароль] [имя_базы_данных] < [дамп_базы_данных].sql .

В случае, если дамп базы данных был заархивинован: gunzip < [дамп_базы_данных].sql.gz |mysql -u[имя_пользователя] -p[пароль] [имя_базы_данных] .

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

Настройка файла конфигурации

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

Не забудьте удалить файл.maintenance из корневой папки сайта.

Остаётся только проверить работоспособность сайта!

Заключение

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

Что же, для этого и созданы комментарии. Поэтому любые советы, дополнения и просто обмен опытом категорически приветствуются.

P.S. Важное дополнение в комментарии от

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

Здесь я подробно и пошагово расскажу о том, как переехать на другой хостинг с сайтом на WordPress. Читайте всё внимательно, соображайте правильно, и всё будет хорошо.

Я приведу инструкцию переезда, которая позволит всё время находиться сайту в доступном состоянии. То есть, всё время, пока вы будете его перетаскивать на другой хостинг (а это может занять время), он будет открываться у посетителей, и поисковики будут его видеть. Это позволит не испортить стратегию продвижению, если были уже достигнуты какие-то цели.

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

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

А если у вас какой-то другой хостинг, то делайте всё сами. Это интересно! Итак, поехали!

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

Разделим всё процедуру на несколько этапов. Делайте всё именно в этом порядке, и не иначе.

Сохранение файлов сайта на компьютер

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

Сохранение базы данных сайта на компьютер

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


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


В PHP My Admin перейдите во вкладку «Экспорт» и, оставив все настройки по умолчанию, нажмите кнопку «Вперёд».


Начнётся скачивание базы данных. Она сохранится в виде архива, оставьте её так, не распаковывайте.

Создание сайта на новом хостинге

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


Добавьте домен вашего сайта (регистрировать не надо, только добавить уже существующий домен) и направьте его на какую-либо папку на хостинге.


Загрузка файлов сайта на новый хостинг

Следующий этап переноса – загрузка тех файлов сайта, которые были сохранены на компьютере, на новый хостинг. Нужно загрузить в ту папку, на которую вы в действии выше направили домен.

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

Создание базы данных сайта на новом хостинге

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


Затем перейдите к управлению созданной базой банных через PHP My Admin, перейдите во вкладку «Импорт», нажмите кнопку «Обзор» и выберите файл архива базы данных, который вы скачали ранее со старого хостинга.


И потом нажмите «Вперёд», чтобы начать загрузку базы с компьютера.


Изменение параметров файла конфигурации

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

/** The name of the database for WordPress */ define("DB_NAME", "имя базы данных"); /** MySQL database username */ define("DB_USER", "имя пользователя базы данных"); /** MySQL database password */ define("DB_PASSWORD", "пароль базы данных"); /** MySQL hostname */ define("DB_HOST", "localhost");

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

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

Проверка правильности переноса сайта

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

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

  • Узнайте IP вашего сервера на новом хостинге. Это можно выяснить у службы поддержки или в персональном кабинете.
  • Откройте файл на компьютере C:\Windows\System32\drivers\etc\hosts (открыть через программу блокнот или аналогичную) и запишите в конце такую строку:


Есть вопросы?

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: