Перенос сайта на WordPress на новый домен
Автор LANCIO Рубрика Блог Дата 25 марта, 2016
Мне очень часто задают вопросы, когда необходимо перенести сайт, работающий на движке WordPress, на новый домен. По своей сути, данная процедура заключается только в изменении имени домена, а весь контент, в том числе и структура ссылок, остаются без изменений. Не стоит забывать и SEO показателях сайта, ведь если вы работали над поисковой оптимизацией вашего интернет-ресурса, необходимо сохранить показатели тИЦ (Яндекс) и PR (Google).
К смене домена работающего сайта необходимо подходить с полным пониманием дела, чтобы не столкнуться с неприятными последствиями ошибочных действий.
Процесс переноса сайта новый домен я условно разделю на 2 части:
- Перенос сайта, работающего на CMS WordPress, на новый домен – непосредственно процедура переноса.
- Создание 301 редиректа со старого домена на новый – перенаправление всех ссылок со старым доменом на новый адрес.
Перенос сайта на движке WordPress на новый домен
В первую очередь необходимо сделать 2 шага:
- сохранить копию всех файлов сайта, используя FTP-клиент (это действие необходимо, если вы меняете хостинг сайта);
- обязательно создать резервную копию базы данных сайта, чтобы развернуть бэкап в случае ошибки.
В дальнейшем, процедура смены домена на движке WordPress, выполнима одним из 3 способов.
1 способ
Это самый простой способ, требующий от вас минимум действий.
- Зайдите в админку вашего сайта на страницу «Настройки — Общие».
- В полях «Адрес WordPress (URL)» и «Адрес сайта (URL)» укажите URL нового домена и подтвердите изменения, нажав на кнопку «Сохранить изменения».
- Готово. В тот же момент WordPress переадресует вас на страницу входа в админ-интерфейс, но уже на новом домене.
2 способ
- Откройте сохраненный sql-дамп базы данных в текстовом (Notepad++) или PHP редакторе.
- Замените все вхождения старого адреса сайта на новый адрес, например, http://domain.ru замените на http://newdomain.ru, и сохраните изменения (для этого достаточно нажать Ctrl+F и воспользоваться инструментом автозамены).
- Загрузите дамп в базу данных на сервере, предварительно удалив из нее все имеющиеся таблицы.
- Готово. Сайт на WordPress работает по новому адресу.
3 способ
- Зайдите в phpMyAdmin и выберите базу данных.
- Нажмите на вкладку «SQL» и поочередно выполните следующие три запроса, заменив http://domain.ru на http://newdomain.ru, соответственно старый домен на новый адрес сайта (обратите внимание, что в конце адреса не должно быть слеша):
-
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');
-
- Готово. Теперь сайт будет открываться по новому адресу.
Создание 301 редиректа со старого домена на новый
Теперь необходимо добиться того, чтобы при обращении к любой странице сайта по старому адресу посетитель автоматически перенаправлялся на ту же самую страницу в новом домене.
Для этого необходимо заменить содержимое файла .htaccess, находящегося в корне старого домена, на следующее (вместо newdomain.ru указываете новый домен):
Options +FollowSymLinks RewriteEngine on RewriteRule (.*) http://newdomain.ru/$1 [R=301,L]
На этом процедуру переноса WordPress-сайта на новый домен можно считать законченной.
Теперь несколько слов относительно сохранения показателей тИЦ и PR сайта.
Вышеуказанная директива кроме своего прямого назначения позволяет перенести на новый домен показатель Google PR, так что с ПиАром проблем возникнуть не должно. При переносе показателя тИЦ Яндекса, необходимо, чтобы при обращении к старому домену срабатывал 301-редирект, но за исключением файла robots.txt, в файле .htaccess старого домена нужно указать следующее:
<filesmatch "robots.txt$"> RewriteEngine off Options +FollowSymLinks RewriteEngine on RewriteRule (.*) http://newdomain.ru/$1 [R=301,L]
А в файле robots.txt указать следующее:
User-Agent: * Disallow: Host: newdomain.ru
Если вам необходимо сделать перенаправление стырых доменов на новый домен (по ссылкам был переход на новый домен), то добавьте их как alias к основному новому домену в админ панели управления хостингом и сделайте 301 редирект в .htaaccess, добавив следующие строки (на старых доменах должны быть прописаны NS сервера хостинга нового домена):
RewriteCond %{HTTP_HOST} ^www.olddomain.ru$ [OR] RewriteCond %{HTTP_HOST} ^olddomain.ru$ RewriteRule ^(.*)$ http://newdomain.ru [R] RewriteCond %{HTTP_HOST} ^www.sub.olddomain.ru$ [OR] RewriteCond %{HTTP_HOST} ^sub.olddomain.ru$ RewriteRule ^(.*)$ http://newdomain.ru [R]
При необходимости оставить работоспособность корпоративной почты на другом почтовом сервере Вам потребуется прописать в настройках DNS нового домена MX запись и A запись, уточнив IP адрес сервера, веб-адрес на доступ к серверу и приоритет. Пример записей, которые необходимо будет добавить:
A запись: mail А XX.XXX.XX.XX (mail — поддомен, A — тип записи, XX.XXX.XX.XX — IP адрес сервера)
MX запись: MX 10 mail.zakazchik.ru (MX — тип записи, 10 — приоритет, mail.zakazchik.ru — веб-адрес сервера)