Как правильно перенести WordPress-сайт на новый домен?
Нередко возникают ситуации, когда функционирующий сайт на движке Wordpress крайне необходимо перенести на другое (новое) доменное имя. Т.е. фактическое наполнение ресурса остается, а меняется только его «обертка» – домен. При этом очень важно сохранить анатомию ресурса: ссылки, перелинковку, комментарии, работающие плагины и т.д. Более того, нужно сохранить еще и «пузомерки» PR и тИЦ.
Решение проблемы требует профессионального подхода и опыта, иначе можно нанести колоссальный вред сайту, а исправление ситуации потом займет несколько месяцев.
Можно условно выделить 2 этапа при переносе сайта:
- Перенос всего ресурса (движок, контент, БД и т.д.) на новое доменное имя.
- Правильная настройка 301 редиректа на старом домене.
Переносим работающий WP-сайт на новый домен
Первым делом нужно провести две простые операции:
- Зайти через протокол ftp и скопировать все содержимое с каталога, который имеет название вашего старого домена.
- Выполнить полный бекап базы данных, чтобы с его помощью можно было легко восстановить нужные данные.
Дальше требуется «сказать» движку о том, что теперь мы полноценно работаем на новом домене. Тут есть 3 варианта достижения цели.
Вариант №1. Наиболее простой, подойдет даже для «чайников».
- Авторизуемся в админке сайта, переходим в «Настройки», а там – «Общее»;
- Находим там поля «Адрес блога» и «Адрес WordPress». В них будет указан старый домен. Следовательно, его нужно заменить на новый. Не забудьте сохранить настройки;
- Об успешном выполнении операции вы узнаете по факту появления странички авторизации в админку, URL которой теперь будет включать новое доменное имя.
Вариант №2. Средняя сложность.
- Дамп БД в формате .sql нужно открыть в текстовом редакторе, желательно с поддержкой языков программирования (не стандартный Блокнот);
- Делаем замену ВСЕХ упоминаний старого домена на новый. Т.е. site1.ru меняем на site2.ru – можно воспользоваться автозаменой, сохраняем;
- Новый дамп загружаем в БД. Желательно очистить ее от всех таблиц предварительно;
- Готово! Старый сайт прекрасно работает на новом домене.
Вариант №3. Для «продвинутых».
- Заходим в phpMyAdmin вашего хостинга или сервера. Выбираем нужную БД;
- Во вкладке «SQL» нужно один за другим выполнить три простых запроса. Важно, чтобы вместо site1.ru (старый домен) и site2.ru (новый домен) стояли ВАШИ значения, причем БЕЗ СЛЕША;
Запрос 1:
UPDATE wp_options SET option_value = replace(option_value, 'http://site1.ru', 'http://site2.ru') WHERE option_name = 'home' OR option_name = 'siteurl';
Запрос 2:
UPDATE wp_posts SET guid = replace(guid, 'http://site1.ru','http://site2.ru');
Запрос 3:
UPDATE wp_posts SET post_content = replace(post_content, 'http://site1.ru', 'http://site2.ru');
- Все, готово.
Тонкости настройки 301 редиректа на старом домене
Когда техническая часть переноса завершена, остается только настроить правильное взаимодействие с поисковыми системами, чтобы они поняли о «переезде». Кроме того, важно сохранить позиции в выдаче, из которой посетители будут попадать уже на новый домен. В этом и заключается миссия 301 редиректа.
Тут все очень просто, достаточно лишь произвести небольшую манипуляцию с .htaccess, который расположен в корневом каталоге старого доменного именни.
Options +FollowSymLinks
RewriteEngine on
RewriteRule (.*) http://site2.ru/$1 [R=301,L]
Примечание: на месте site2.ru указываете ваш новый домен. Вот и все, процедура успешно завершена.
Как сохранить PR и тИЦ при переносе сайта на новый домен?
Конечно, никому не хочется терять показатели тИЦ и PR при переезде, особенно если их значения зарабатывались долгое время.
Что касается Page Rank от Google, то изменения в .htaccess, описанные выше, позволяют также сохранить заветное число на новом доменном имени. Больше делать ничего не нужно.
А вот с Яндексом все чуточку сложнее. Вам нужно сделать так, чтобы редирект 301 срабатывал всегда, но только не в случаях обращения к robots.txt. Для этого достаточно добавить в .htaccess следующий код:
<FilesMatch "robots.txt$">
RewriteEngine off
</FilesMatch>
Options +FollowSymLinks
RewriteEngine on
RewriteRule (.*) http://site2.ru/$1 [R=301,L]
Кроме того, в robots.txt нужно добавить следующее:
User-Agent: *
Disallow:
Host: site2.ru
И не забывайте, что site2.ru ОБЯЗАТЕЛЬНО нужно заменить на ваш новый домен.