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

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

Казалось бы, как связано имя сайта и техническая реализация со стороны «движка» (сюда можно отнести не только CMS-системы, но и фреймворки, CMF, даже простой HTML-код)? На самом деле, как бы разработчики не абстрагировались от полных URL при формировании адресов, перенос одного и того же сайта на другой домен всегда вызывает массу проблем. Это касается не только новичков, но и опытных пользователей.

Зачем переносить сайт на другой домен

Предположим, вы прислушались к нашим советам из инструкции по созданию сайта на WordPress и решили начать тестирование платформы с виртуальной машины/локального сервера. Создали тестовый сайт. Назвали его ТЕСТ1.ру и пробуете настраивать. В какой-то момент вам всё нравится, вы готовы перенести его на действующий (боевой) сайт с реальным хостингом. Но для боевого сайта точно не подойдёт имя «ТЕСТ1.ру». Значит, его нужно изменить на более подходящее. Получается, что либо нужно всё начинать сначала, либо поменять отдельные настройки и обновить базу данных. Последний вариант явно будет быстрее.

Есть и другие ситуации, требующие переноса домена:

  • Сайт долго работал на протоколе HTTP, требуется перенос на HTTPS-версию (для поисковых систем это два разных сайта).
  • Доступ к старому домену утерян. Его не получается продлить, срок продления вышел, домен успели перекупить.
  • Ранее сайт работал на поддомене, сейчас планируется переход на собственное имя второго уровня.
  • Сменился бренд или наименование компании/продукта и т.п., это может потребовать замены домена.
  • У вас использовался кириллический домен, из-за чего пришлось сменить имя на вариант, содержащий только латиницу.
  • Появилась возможность приобрести более звучный или красивый домен (адрес легче запоминается).
  • Старый домен был изъят / аннулирован по суду (бывают и такие случаи).
  • К старому сайту применены санкции со стороны поисковых систем (хотя, здесь проще создать новый сайт «с нуля», что будет логичнее).

Ситуация существенно усложняется, если планируется сменить ещё и движок. Варианты с уходом от блокировок мы рассматривать не будем, хотя они тоже возможны.

Типовой план переноса (проверочный список)

Кто-то может сказать, что в смене домена нет ничего страшного и дел требуется немного: обновить БД и конфиги поправить… Но на самом деле, существует много подводных камней, и не только в техническом плане. Дело в том, что имя сайта может использоваться в различных вспомогательных сервисах, фигурировать в ссылках и т.д. Где-то нужно будет восстановить права, так как возможностью управления обладал другой вебмастер, где-то нужно настроить редирект, чтобы не просели SEO-показатели.

Наш проверочный список (не претендует на статус самого полного).

  • Техническая реализация переноса (покупка нового домена, направление его на нужный хостинг, выжидание обновления DNS-серверов, редактирование конфигов CMS, обновление ссылок в базе данных, очистка кэша, получение новых SSL-сертификатов и т.д.).
  • Обязательная правка основного зеркала, чтобы сохранить/перенести PR сайта и/или показатель ИКС Яндекса.
  • Полный редирект для материалов, пути/ссылки которых не изменились.
  • Ручной редирект для материалов, которые сменили адрес.
  • Заведение нового аккаунта в почтовых сервисах, оповещение действующих клиентов/пользователей о смене.
  • Получение новых кодов аналитики, рекламных блоков и добавление их на сайт.
  • Восстановление доступа к счётчикам и метрикам при смене владельца (актуально для панели вебмастера и для отдельных сервисов подсчёта статистики, например, для LiveInternet, в случае покупки старого домена).
  • Добавление сайта на индексацию в панелях вебмастера, указание на новые карты сайта (для ускорения процесса индексации).

Теперь о самых важных шагах подробнее.

Основной технический перенос

Предположим, что смена движка не планируется, поэтому структура URL-адресов не изменится. База данных в этом случае может использоваться от старого сайта, но с незначительными правками (они будут зависеть от движка). Редирект будет простым в настройке.

А вот перенос между разными фреймворками или CMS лучше всего доверить специалистам. К этой же категории относится и перенос сайта с облачных платформ, таких как WIX или uKit/uCoz, на коробочную CMS.

Шаг 1. Покупка нового домена

Следует понимать, что сам домен при этом не обязательно должен быть новым. Кто-то перекупает имя сайта из-за его длины или запоминающегося написания. Компании могут использовать названия оригинальных продуктов, брендов, торговых марок и т.д. Неновый домен может иметь какие-то показатели в выдаче (ИКС, ранее ТИЦ, PR), ссылочную массу.

Так как нам важен перенос именно наших показателей, будем рассматривать ситуацию с привязкой только к своим параметрам (от старого домена/сайта).

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

Шаг 2. Направление домена на NS-сервера хостинга

После того, как вы получите доступ к управлению доменом, нужно внести записи NS1 и NS2 (в редких случаях резервных записей может быть больше – до 4-х). Уточнить правильный адрес можно у своего хостера.

Например, для Bluehost это будут:

  • ns1.bluehost.com
  • ns2.bluehost.com

или, если необходимы точные IP-адреса:

  • 162.88.60.37
  • 162.88.61.37

Список DNS-серверов Bluehost

Теперь осталось выждать, когда обновится DNS-система. В норме этот процесс может занять до 2-3 дней, время будет зависеть от регистратора. Например, REG.ru оговаривает около одних суток.

Шаг 3. Создание нового сайта в панели управления хостинга

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

Если у вас cPanel или другие web-интерфейсы для управления хостингом, нужно выбрать вариант создания нового сайта – вводится новое доменное имя, задаётся имя каталога расположения файлов движка.

Каталог файлов сервера

Некоторые тарифные планы предполагают создание не более 1 сайта, поэтому здесь есть следующие варианты:

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

Шаг 4. Копирование файлов

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

  1. перейти в каталог старого сайта,
  2. активировать показ скрытых файлов,
  3. выделить все файлы и каталоги, нажать кнопку «Копировать»,
  4. перейти в каталог нового сайта,
  5. нажать кнопку «Вставить».

Если сайты работают на разных хостингах или даже в разных аккаунтах у одного провайдера, то быстрее всего будет:

  1. создать архив из файлов старого сайта,
  2. скачать его на свой ПК,
  3. загрузить на новый хостинг,
  4. распаковать,
  5. при необходимости, поправить название каталога, переместить файлы из одного в другой и т.п.

Если архивация вызывает ошибки с кодировкой (например, имеются файлы в кириллице), придётся переносить все файлы поштучно (с помощью FTP-подключения).

Если на старом сайте использовалось файловое кэширование – почистите каталоги с кэшем (удалите из них все файлы, для WordPress – это каталог wp-content/cache).

Шаг 5. Правка конфигурационных файлов

В отдельных CMS-системах формирование URL производится на основе записей в конфигурационных файлах. Поэтому нужно изменить старый домен на новый.

Второй важный момент – подключение к базе данных.

  • Если создаётся новая база данных, то необходимо поменять параметры доступа к ней (название БД, имя пользователя и пароль). При этом префикс таблиц можно оставить прежним.
  • Если правила вашего тарифа предполагают наличие только одной базы данных, то параметры подключения к ней останутся прежними. Но нужно обязательно сменить префикс таблиц, чтобы CMS обращалась к нужным таблицам.

В случае с WordPress правки нужно вносить в файл wp-config.php.

Другие CMS:

	
  • Joomla – configuration.php.
  • Bitrix (с ядром D7) – /bitrix/.settings.php (скрытый файл для linux-систем).
  • Drupal – /sites/default/settings.php.
  • OpenCart – config.php.
  • DLE – /engine/data/dbconfig.php.

Шаг 6. Обновление URL в базе данных

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

Обновить базу данных можно несколькими способами.

  • С помощью специального SQL-запроса (вводится в консоли или в веб-интерфейсе phpMyAdmin).
  • С помощью специальных плагинов (снижают риск ошибки, но имеются не во всех CMS-системах, для WordPress это плагин Velvet Blues Update URLs или аналогичные по функционалу).
  • С помощью текстовых редакторов на ПК (лучше всего использовать программы, рассчитанные на программистов, такие как Notepad++).

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

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

Остаётся проверенный временем третий способ.

  1. Устанавливаете актуальную версию Notepad++
  2. Открываете в этом редакторе файл вашего дампа базы данных (файл не должен быть сжатым, при необходимости предварительно распакуйте архив).
  3. Нажимаете комбинацию «Ctrl+h» (меню «Поиск -> Замена…»).
  4. В поле «Найти» указываете свой старый домен (если использовали кириллицу, нужно будет запустить процедуру 2 раза: один в стандартной раскладке «ваш-сайт.рф», второй – в punycode «xn—-7sbbf2b7bj7b.xn--p1ai»), а в поле «Заменить на» прописываете новый домен (по аналогии – при смене HTTP/HTTPS-версий сайта).
  5. Нажимаете кнопку «Заменить все».

Осталось загрузить ваш новый дамп на хостинг.

Если вам нужно поменять префикс таблиц, действуйте по аналогии (найти – старый префикс, заменить – новый префикс).

Будьте осторожны при вводе (не допускайте опечаток) и храните бэкапы на случай неправильных действий.

Если переезжаете на кириллический домен, лучше вводите его в punycode.

Теперь сайт будет работать на новом домене, а все ссылки в БД будут вести на внутренние страницы (а не на старый сайт).

Шаг 7. Правка PHP/JS-скриптов и CSS-файлов

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

Тут нет никаких особенностей CMS. Ситуация очень редкая. Все места правки ищутся вручную, можно использовать специальное программное обеспечение с полнотекстовым поиском по каталогам, такое как Folder Find Text или аналоги.

Если сайт сменил владельца и на нём установлены старые рекламные блоки, счётчики аналитики (LiveInternet, Google Analitycs, Яндекс.Метрика) и т.п., их нужно заменить на новые, привязанные к своим аккаунтам.

В некоторых случаях, например, с LiveInternet, если куплен старый домен, потребуется изменить привязку к новому аккаунту/владельцу.

Ну или, как минимум, нужно убрать с сайта старые коды, так как старый владелец будет видеть всю вашу статистику.

Шаг без номера. Что с HTTPS и SSL-сертификатами?

SSL-сертификаты со старого сайта можно использовать только в том случае, когда они получены на компанию/группу доменов. В остальных ситуациях (читать как «в 99% случаев») достаточно просто получить новые, особенно, если речь о бесплатных сертификатах от Let’s Encrypt.

Если старый сайт уже работал на HTTPS-протоколе, то что-то дополнительно в настройках CMS менять не нужно (главное – правильно поменять ссылки на шаге №6, чтобы новый домен тоже был с HTTPS).

Выбор между HTTP и HTTPS-версий сайта уже давно «не выбор». Сомневаетесь? Тогда почитайте наш материал по теме.

SEO

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

Выделение главного зеркала

Чтобы поисковые системы смогли связать старый и новый сайт между собой как зеркала (копии), нужно об этом им рассказать. Это утверждение будет справедливым и по отношению к HTTP/HTTPS версиям сайта.

Для этого нужно поправить файл robots.txt (в корне обоих сайтов):

Host: https://ваш_новый_домен.ру

Директива Host помогает поисковой машине автоматически определить главное зеркало. Обратите внимание, в записи важно правильное указание адреса: с www или без, с http или с https.

Если у вас есть аккаунт в сервисе Яндекс.Вебмастер, вы можете воспользоваться специальным инструментом: «Переезд сайта» (доступен только для сайтов, которые на данный момент определяются как главное зеркало, то есть, для появления этого пункта в старом домене следует дождаться индексации нового домена).

Редирект со старых адресов на новые

Операция будет очень полезна для автоматического перенаправления посетителей и ботов поисковых систем с «неправильных» адресов на «правильные».

Как это работает? Пользователь заходит на страницу «http://www.ваш_сайт.ру/страница1.html», а сервер его переводит на URL вида «httpS://(без www)новый_домен.ру/страница1.html». А браузеру или боту отдаётся специальный код ответа, который помогает понять причину перенаправления – 301 (перемещено навсегда).

В примере мы рассмотрели схему, в которое меняется HTTP на HTTPS, а также адресация «с WWW» на «без WWW». При этом размещение самой страницы не поменялось (страница1.html).

Автоматический редирект прописывается в специальном файле, который считывает web-сервер. Для Apache2 это скрытые файлы .htaccess (изменяются в обычном текстовом редакторе).

Редирект со старого домена на новый нужно прописать на старом сайте (положить/изменить в его каталоге, на его хостинге).

<FilesMatch "robots.txt$">
RewriteEngine off
</FilesMatch>
Options +FollowSymLinks
RewriteEngine on
RewriteRule (.*) https://новый_сайт.ру/$1 [R=301,L]

На новом домене в редиректе можно разве что настроить внутреннее перенаправление с разных версий протокола (HTTP/HTTPS или WWW/без WWW).

Ссылочная масса

Старые ссылки будут учитываться до тех пор, пока настроен правильный редирект и пока работает старый сайт. Если сайт удалить с хостинга, редирект пропадёт, а старые ссылки на внешних сайтах будут вести в пустоту. Соответственно, в ТИЦ/ИКС Яндекса или в PR Гугла учитываться не будут.

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

Несмотря на то, что Яндекс официально отказался от учёта внешних ссылок при ранжировании, это не значит, что им не нужно уделять внимания. Ведь по старым URL с внешних сайтов к вам заходят пользователи или потенциальные клиенты (то есть – ваша целевая аудитория).

Индексация

Новый сайт обязательно нужно поставить на индексацию поисковыми системами. Если раньше для этой цели существовали специальные формы Add URL («аддурилки»), то сейчас обязательно нужно регистрировать аккаунты в сервисах вебмастера.

Для сайтов, работающих в РФ, будут актуальны панели вебмастера Google и Яндекс. Для отдельной аудитории будет полезна ПС Майл.ру.

Чтобы добавить новый сайт в панель, необходимо подтвердить владение им (способы подтверждения подробно описаны в справочных материалах поисковых систем).

» Статьи » Как перенести сайт на другой домен