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

При простом переносе файлов 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 , если у вас настроено кэширование. Перед проверкой корректности отображения сайта очистите кэш браузера.

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

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

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

  • mysql;
  • rsync;

Этого будет вполне достаточно, если вы менее опытный пользователь, то сюда можно добавить еще два инструмента:

  • phpmyadmin;
  • клиент ftp;

Упор я делаю на VPS, рассчитывая на то, что у вас есть доступ к серверу по SSH. Но эта инструкция может быть использована чтобы выполнить перенос сайта на Wordpres на другой хостинг. Большинство современных хостингов дают доступ к ssh консоли хотя бы в html интерфейсе.

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

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

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

Перенос сайта WordPress

Сначала нам нужно перенести все файлы сайта на другой сервер. Конечно, вы можете использовать для этого FTP клиент, сначала скачать все файлы по одному с одного сервера, а потом загрузить по одному на другой. Но это сработает, только если у вас немного файлов. С сайтом в несколько гигабайт это может занять дни. Поэтому будем использовать более простой способ через SSH. Подключитесь к вашему серверу по SSH:

ssh root@address1

rsync -avz -e ssh /папка/с/файлами/сайта root@address2:/папка/для/файлов/сайта/

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

mysqldump -u root -p имя_базы > dump.sql

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

rsync -avz -e ssh dump.sql root@address2:~/

Если ваш сайт использует https, то нужно передать на новый сервер сертификаты, пока вы не подключите домен и не создадите новые:

rsync -avz -e ssh /путь/к/сертификату/site.pem root@address2:~/
rsync -avz -e ssh /путь/к/сертификату/site.key root@address2:~/

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

ssh root@address2

Сначала файлы. Утилита rsync сохранит владельца файла из предыдущего сервера или сделает им root. А нам нужно чтобы файлы сайта принадлежали тому пользователю, от имени которого запущен Nginx и php-fpm или Apache. Посмотрите группу и пользователя, от которых они запущены:

Затем поменяйте текущего пользователя и группу всех файлов сайта на нужные с помощью утилиты chown:

chown -R losst:losst /путь/к/файлам/сайта/

Флаг -R включает рекурсивную обработку всех файлов, первый параметр - пользователь, второй, через двоеточие - группа. Дальше мы готовы перейти к базе данных. Сначала нужно создать нашу базу и создать пользователя, с помощью которого WordPress будет к ней подключаться. Для этого войдите в интерфейс mysql:

> CREATE DATABASE имя_базы_данных;
> CREATE USER "имя_пользователя"@"%" IDENTIFIED BY "пароль";
> GRANT ALL PRIVILEGES ON "имя_базы_данных" . * TO "имя_пользователя"@"localhost";
> GRANT ALL PRIVILEGES ON "имя_базы_данных" . * TO "имя_пользователя"@"address1";
> FLUSH PRIVILEGES;

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

mysql -u root имя_базы_данных < dump.sql

В принципе, для создания базы, пользователя и ее разворачивания можно было использовать Phpmyadmin, но в консоли все проще. Дальше нам осталось отредактировать файл wp-config и указать новые параметры доступа к базе:

vi /путь/к/файлам/сайта/wp-config.php

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

Если хотите использовать HTTPS, то укажите путь к переданным сертификатам в конфигурации Nginx или Apache. Вы уже знаете как перенести wordpress, осталось только протестировать. Теперь возвращаемся на ваш локальный компьютер и добавляем в файл /etc/hosts псевдоним вашего домена, который будет указывать на новый адрес. В Windows тоже есть этот файл, но только находится он по другому адресу:

address2 ваш_домен.ru

Дальше открываем сайт в браузере, убеждаемся, что это именно новая версия и кэш DNS обновился, затем проверяем как все работает, если все хорошо, то можно перенаправлять A запись регистратора на этот, новый ip адрес:

Доменная зона обновится не мгновенно, на это потребуется довольно много времени, до нескольких дней. Все это время некоторые пользователи будут обращаться к старому серверу чтобы он выдавал новые страницы нужно подключить сюда базу данных. Помните, мы разрешили подключаться к нашей базе от этого сервера, теперь просто укажите на старом сервере address1 в wp-config.php данные доступа и адрес сервера address2 вместо localhost. Готово. Теперь ваш сайт перенесен. Осталось дождаться полного обновления доменной зоны и можно выключать первый сервер. Не забудьте обновить SSL сертификаты, если их использовали.

Сегодня каждый человек, который имеет свой сайт в интернете, может столкнуться с проблемой, что ему нужно будет перенести сайт на другой хостинг. На это может быть много различных причин. Конечно, самая распространенная из них - недовольства предоставляемыми услугами. Если вы уже не можете терпеть, то необходимо действовать. Это довольно долгая процедура. Если вы будете все делать пошагово, то сможете спокойно перенести сайт, а не переделывать все несколько раз. Итак, как производится перенос WordPress сайта с сохранением настроек? В этой статье вы найдете все ответы на интересующие вопросы.

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

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

1. Во-первых, необходимо скопировать все файлы со своего сайта.

2. Также экспортируем со старого хостинга базу данных.

3. После переноса всех файлов можно подключать на новом хостинге.

4. Создаем базу данных и импортируем в нее данные, которые вы сохранили.

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

6. На этом шаге можно проверить правильность выполнения всех действий. Для этого можно использовать технический домен или временный URL.

7. На последнем этапе нужно изменить DNS домена. Для этого переходим в панель управления регистратора доменных имен.

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

Перемещаем файлы со старого хостинга

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

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

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

Экспортировать старую базу данных нужно в phpMyAdmin. Перейти к этой директории можно через панель управления. Вам нужно будет найти ссылку на phpMyAdmin в пункте «Базы данных». Этот шаг необходимо проделать, если у вас установлена cPanel.

В новом окне выбираем нужную базу данных, а затем переходим к разделу «Экспорт». Далее нужно изменить несколько параметров. Опускаемся к пункту «Способ экспорта» и выбираем «Обычный». Пролистав немного ниже, вы увидите раздел «Вывод», и в пункте «Компрессия» устанавливаем значение gzip.

Осталось только подтвердить свои действия, нажав на кнопку "ОК". Сразу после этого начнется загрузка вашей базы данных.

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

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

Итак, как его привязать? Как мы уже выяснили, нужно перейти в панель управления. Далее необходимо найти раздел «Домены» и перейти к нему. Далее нажимаем на кнопку «Добавить доменное имя». Осталось только указать бывший домен и подтвердить свои действия.

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

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

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

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

Создание базы данных

На этом этапе нам необходимо создать базу данных на выбранном сервере. Как это сделать? Ничего сложного в этом нет. Переходим к панели управления и выбираем пункт «Базы данных». Далее нажимаем на кнопку «Создать базу данных». В новой вкладке вводим пароль и имя для новой БД.

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

Импортирование данных в БД

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

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

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

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

Чтобы произвести перенос на другой хостинг WordPress сайта, нужно зайти в выбранную базу данных.

На верхней панели нужно нажать на кнопку «Импорт».

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

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

Настраиваем подключение сайта к БД

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

Этот файл можно отыскать в корне самого сайта. Далее нужно найти этот документ и открыть его. Переходим к строкам, где в функции define отображены параметры: DB_NAME - имя базы данных, DB_USER - имя пользователя БД, DB_PASSWORD - пароль, DB_HOST - сервер базы данных.

Чтобы перенести на другой хостинг WordPress блог, нужно эти данные заполнить из окна, которое мы открывали ранее - «Информация о логине». Во втором параметре функции define необходимо указать необходимую информацию.

Проверяем качество переноса сайта или блога

Уже практически все сделано. Остается всего несколько действий. На предпоследнем этапе вам необходимо проверить качество своей работы. А как это сделать? Так как доменное имя еще не указывает на наш сайт, нужно использовать технический домен или временный URL (это одно и то же, название зависит от того, на каком хостинге вы пытаетесь проверить свой сайт или блог).

Чтобы перенести на другой хостинг WordPress блог, нужно узнать техническое доменное имя. Для этого необходимо перейти к разделу «Домены». Далее выбираем нужное название и кликаем по кнопке «Инструменты». В новом окне вы сможете увидеть ссылку на временный URL для своего блога. Кликаем по ней и проверяем корректность работы своего сайта.

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

Прописываем DNS

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

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

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

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

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

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

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

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

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

Услуги по переносу сайта

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

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

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

Заключение

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

У многих вебмастеров и владельцев сайтов может возникнуть ситуация, когда нужно сайт перевести с одного домена, на другой. необходимо сайт, работающий на движке 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 редирект передаст все поведенческие факторы новому домену, а над позициями в поиске нужно работать всегда.

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

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

  1. Воспользоваться одним из способов, описанных ниже, для переноса сайта на другой домен.
  2. Настроить robots.txt на старом и новом доменах.
  3. Создать 301 редирект со старого домена на новый.

Перенос сайта, работающего на WordPress, на другой домен

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

Самый простой способ, заключается он в том, чтобы поменять доменное имя в консоли администратора:

  1. Зайдите в панель администратора, далее переходим на страницу “Настройки - Общие”.
  2. В имеющихся полях “Адрес WordPress” и “Адрес сайта” заполняем новый URL вашего домена. Сохраняем настройки. Готово.

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

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

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

  1. Откройте SQL-дамп базы данных в текстовом редакторе (например, Notepad++).
  2. Замените все вхождения старого адреса сайта на новый. Сохраните документ.
  3. Импортируйте дамп в базу данных, предварительно перед этим удалите все имеющиеся таблицы там. Готово.

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

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

  1. Зайдите в PhpMyAdmin, непосредственно в базу данных. Нажмите в приборной панели сверху “SQL”.
  2. Вписываем поочередно или сразу три запроса: 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");
  3. Заменяем “domain.ru” и “newdomain.ru” старым и новым адресами соответственно. Сохраняем. Таким образом мы добьемся изменения URL по всему сайту, где бы он не был. Готово.

Настройка robots.txt на старом и новом доменах

Для успешной склейки старого домена с новым необходимо указать поисковому роботу о функционировании другого адреса сайта. Для этого в файле robots.txt на старом домене создаем директиву “Host” с адресом нового доменного имени (то же самое проделываем на новом):

Host: newdomain.ru

Данная и следующая процедуры необходимы для того, чтобы сохранить “вес” сайта (тИЦ, возраст и пр.), а также не дать подумать роботу, что он имеет дело с совершенно другим ресурсом, с таким же контентом и дублированными страницами.

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

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

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

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

Собственно, вот и вся процедура.

  • Сергей Савенков

    какой то “куцый” обзор… как будто спешили куда то