Перенос сайта на другой хостинг

перенос блога blogwork

В этой статье вас ждет краткое руководство по переносу сайта с одного хостинга на другой. Расскажу и покажу как перенести сайт на движке Джумла, Битрикс, Вордпресс.

Как в общем виде происходит перенос сайта

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

То же самое относится и к выбору хостинга — если «прописался» на одном хостинге, то должна найтись веская причина для переезда (в остальных случаях переносить сайт как правило лень): плохая доступность и аптайм сайта, регулярные простои и отключения серверов, завышенная цена либо ее резкий рост из-за падения курса рубля, некачественное обслуживание и работа техподдержки, плохие сайты-соседи. Рекумендую прочесть статью о том, какой выбрать хостинг для сайта.

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

Идеальный вариант — когда вы умеете переносить сайты так, чтобы их работа ни на минуту не прерывалась.

В среде интернет-разработки и администрирования сайтов и серверов существует множество CMS и панелей управления хостингом. Я постараюсь в общих чертах разобрать процесс переноса на другой хостинг, а также не забыть о наиболее популярных движках в рунете — Joomla, Bitrix, WP.

Перенос сайта со старого хостинга на новый идет в четыре этапа:

  1. Меняем NS-записи (адреса) у доменного имени;
  2. Переносим базу данных;
  3. Переносим файлы сайта (CMS);
  4. Прописываем данные для подключения CMS (WordPress, Joomla, Botrix) к базе данных.

Изменение ns-адресов для переноса сайта

NS-адреса (name server) это записи, указываемые в вашей панели управления доменами у регистратора доменных имен. Именно они «показывают» к какому серверу обратиться за получением данных при вводе доменного имени в строку браузера.

Таким образом, доменное имя может быть одно, но привязывать мы его можем к совершенно разным хостерам и IP-адресам серверов.

В панели регистратора доменов NS-сервера обычно меняются в разделе «DNS». Для примера приведу скриншот из РЕГ.РУ:

панень управления доменами

На нем вы можете видеть, как у нескольких доменов указаны NS-адреса хостинг-дискаунтера Айхор (ДЦ Мароснет в Москве):

ns1.marosnet.ru
ns2.marosnet.ru

Раньше я пользовался Eskhosting и там было что-то вроде этого:

ns15.eskhosting.com
ns16.eskhosting.com

ns39.eskhosting.com
ns40.eskhosting.com

Эти имена (NS-адреса) могут быть разными у разных пользователей хостинга, а могут и не отличаться (быть одинаковыми для всех как у Айхора например) — зависит от хостера, реселлер ли он, количества серверов и т.п.

Также можно указывать реальные IP-адреса вашего сервера (хостера), например:

194.57.117.29

Изменение этих адресов в РЕГ.РУ происходит после выделения домена сайта, который вы хотите перенести, и нажатия кнопки «Изменить DNS»:

изменить DNS

На открывшейся странице вам нужно будет прописать новые NS:

управление ns адресами домена для переноса сайта на другой хостинг

После прописывания новых NS (взамен старых, их оставлять никак нельзя) — на почту администратора домена придет письмо о том что заявка на смену NS принята, процесс изменения начат и они полностью сменятся в течение суток (это касается русскоязычных доменов .ru и .рф, с gtld-доменами процесс занимает до 6-12 часов).

Похожая процедура смены NS-записей вас ждет у всех регистраторов доменных имен. И это обязательное условие для переноса сайта на другой хостинг — иначе браузеру никак не узнать, что нужно идти к новому серверу. Я упрощаю, но примерно так и обстоят дела.

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

Читайте также: Как перенести WordPress с Денвера на хостинг: подробная инструкция.

Перенос базы данных сайта на другой хостинг

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

До сих пор конечно есть небольшие сайты и посадочные промо-страницы (landing pages) на чистом HTML+CSS, которые работают безо всяких БД, в этом случае второй шаг можно пропустить — за неимением самой базы данных. В этом случае переходите сразу к пункту 3 — переносу файлов, ну а я продолжу.

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

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

Заходим в панель, жмем «Базы данных» из списка выбираем БД для переноса и нажимаем на нее (вы как бы зайдете в нее и увидите список таблиц). Жмите «Экспорт», выбираете «Быстрый», формат «SQL», сохраняете файл .sql на локальный компьютер (она будет загружаться с сервера).

экспорт базы данных для ее переноса к новому хостеру

Все готово: дамп БД сделан и готов для импорта.

Теперь идем на ваш новый хостинг, заходим уже там в phpMyAdmin, создаем новую БД с настройками по умолчанию (обычно для русскоязычных сайтов кодировка «utf8_general_ci», но вообще-то надо посмотреть исходную кодировку БД на старом хостинге — она должна совпадать, иначе получите кракозябры и ошибки).

Заходим в БД (таблиц там не будет), жмем «Импорт», выбираем файл на ПК, выбираем кодировку, жмем «Вперед», ждем. В это время phpMyAdmin будет воссоздавать все таблицы и данные в них, но уже на другом хостинге — собственно это нам и нужно было, не так ли?

импорт БД на новом хостинге

Перенос исходных файлов сайта на другой хостинг

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

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

делаем архив файлов сайта, чтобы скачать его

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

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

Есть и второй способ переноса исходников сайта на новый хостинг — при помощи протокола передачи файлов FTP.

  1. Подключитесь к старому хостингу по ФТП, используя для этого данные доступа ftp-аккаунта: хост (ip), логин, пароль;
  2. Скопируйте содержимое корня вашего сайта к себе на компьютер — можно выделить несколько файлов, папок и «перетащить» их к себе;
  3. Дождитесь пока процесс пофайлового копирования исходников будет завершен — вы легко это увидите по пустой очереди заданий в файловом менеджере;
  4. Подключитесь к новому хостингу по ФТП, используя уже другие данные для доступа и перекиньте скопированные в предыдущем шаге файлы с локального компьютера на сервер хостинга.

Решайте сами какой из вариантов переноса вам больше подходит — по ФТП или через файловый менеджер в браузере. Я чаще пользуюсь вторым просто потому что был неприятный опыт увода паролей из FTP-менеджера FileZilla.

Подключаем базы данных WP, Bitrix, Joomla при переносе сайта на другой хостинг

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

Мы осуществляем одни и те же практически идентичные действия: прописываем NS, экспортируем-импортируем БД, переносим исходники. Но БД подключаются по-разному и это единственная разница при переносе.

Настройки базы данных WordPress хранятся в файле «wp-config.php», который лежит в корневой папке вашего сайта с установленным Вордпрессом.

Вам нужно поменять старые данные на новые. Что это за данные? Название базы данных, имя пользователя которому разрешен доступ к базе данных, хост и пароль. Обратите внимание на префиксы!

Напомню, как выглядит wp-config.php:

конфигурационный файл wp-config.php

Настройки базы данных Joomla (Джумла) хранятся в файле configuration.php, напомню как он примерно выглядит:

конфигурационный файл configuration.php для Джумлы

Настройки базы данных Bitrix (1С-Битрикс) хранятся в файле dbconn.php. Он располагается по адресу /bitrix/php_interface/dbconn.php и должен выглядеть приблизительно так:

конфигурационный файл dbconn.php для битрикса

После изменения данных для подключения базы данных остается только ждать пока сменятся НС-записи вашего домена. Этот процесс занимает не менее 3, но не более 48 часов. Ру-домены — подольше, в среднем от 11-12 до 20-24 часов (в зависимости от регистратора).

БОНУС — нюансы и подводные камни при переносе сайта на иной хостинг

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

Я же хочу обратить ваше внимание на некоторые ситуации, чтобы предостеречь начинающих администраторов сайтов и вебмастеров от ошибок и потери работоспособности, данных сайта.

Зачем? Потому что некоторые на первый взгляд несложные самостоятельные переезды внезапно затягиваются более чем на сутки.

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

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

Когда я переезжал от вышеупомянутого Эскхостинга к Айхору я так и сделал — взял тестовый период, перенес один небольшой сайт. Замерил до переноса скорость отдачи, пинги, время загрузки на старом хостинге с HDD и на новом с SSD — и после переноса, чтобы сравнить. Остался доволен и переехал. Можно было бы конечно еще проверять аптайм (в 2015 году у Айхора он хромал судя по отзывам), но мне было лень.

Помимо такой проверки вам нужно обратить на версии ПО, которое использует хостинг, своевременно ли он их обновляет. Посмотреть просто — вам нужно создать файл phpinfo.php, код которого:

<?php

// Показывает информацию о конфигурации PHP
phpinfo();

?>

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

Последнее — регулярно делайте бэкапы, не храните бэкапы на том же сервере или на локальном компьютере. Храните их в облаке!

Напоследок, пара видео о переносе сайтов на другой хостинг — для тех кто любит смотреть, а не читать:

Интересующие вас вопросы можно задать в комментариях. Чао!

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

X