Перенос сайта WordPress на новый домен
Нередко бывают случаи, когда по определенным или неопределенным причинам требуется перенести сайт на новый домен. Как это правильно сделать, чтобы не потерять показатели сайта и чтобы он сразу начал работать? Просто скопировать файлы не получится - в настройках, записях, страницах четко прописано, к какому домену они принадлежат. Поэтому, сегодня мы будем учиться грамотно переносить сайт под управлением wordpress на новый домен без потерь пузомерок, посещаемости и доступности сайта.
Готовы? Прошу следовать дальше...
Переносить сайт будем в 2 шага:
- Перенос файлов и базы данных на новый домен, поднятие сайта
- Создание 301 редиректа со старого домена на новый
Перенос файлов и базы данных на новый домен, поднятие сайта
- Копируем все файлы, которые находятся на фтп со старого домена на новый. Лучше это сделать через локальный жесткий диск, чтобы сохранить у себя на компьютере копию сайта (а мало ли?!)
- Теперь заходим в phpmyadmin и делаем дамп базы данных. Или проще говоря, сохраняем на компьютер копию нашей бд (пригодится)
- Если мы переезжаем на другой хостинг, то теперь заливаем эту базу данных (или делаем импорт нашей бд) в новом phpmyadmin
Кажется все? Файлы и база данных перенесены, все настройки сделаны. Но в таком виде наш сайт работать не будет. Почему? Потому что в базе данных все еще прописан старый домен.
Чтобы это исправить, нам опять потребуется зайти в phpmyadmin и выполнить в базе данных (которая будет использоваться для нового домена) 3 sql запроса:
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');
Не забудьте в них поменять http:/domain.ru на ваш прошлый домен, а http://newdomain.ru на новый домен. Обратите внимание, что после окончания домена слеша быть не должно!
Вот и все, теперь сайт будет открываться по новому адресу.
Создание 301 редиректа со старого домена на новый
Теперь сделаем так, чтобы все показатели (включая посетителей) плавно перетекли на новый домен.
Для этого оставим на старом домене (или создадим новые) файлы robots.txt и .htaccess.
В первом (robots) напишем:
User-Agent: * Disallow: Host: newdomain.ru
А во втором:
<FilesMatch "robots.txt$"> RewriteEngine off </FilesMatch> Options +FollowSymLinks RewriteEngine on RewriteRule (.*) http://newdomain.ru/$1 [R=301,L]
Вот и все. Теперь сайт работаем на новом домене.
P.S. Через какое-то время (когда поисковики сделают склейку) старый домен можно не продлять, а файлы удалить.