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

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

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

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

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

В своей статье «Что такое сайт?» я рассказывал о трех компонентах каждого интернет ресурса. При переносе мы должны поработать с каждым из них.

Во-первых , нужно найти новый хостинг, который будет удовлетворять всем вашим требованиям.

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

В-третьих , потребуется перенести все данные (файлы, базы данных) со старого хостинга на новый.

Это вкратце, теперь давайте рассмотрим весь процесс в подробностях. Максимум, для переноса потребуется 8 шагов. Я буду описывать процесс исходя из предположения, что у вас уже есть новый хостинг, если у вас его еще нет, то сначала выберите подходящий и зарегистрируйте в нем аккаунт, порекомендовать могу один из этих (ссылки партнерские): Timeweb или Sprinthost .

Первое, что нам нужно сделать для переноса – это добавить доменное имя сайта в ваш аккаунт и привязать к нему соответствующие папки, в которые мы, в дальнейшем, будем переносить файлы вашего web ресурса. Для этого нужно найти в панели управления раздел, связанный с управлением доменами, обычно, он так и называется.

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

Перенос файлов, пожалуй, самое простое действие, из всех, что нужно сделать. С помощью FTP клиента или встроенного файлового менеджера нужно скачать все файлы, принадлежащие сайту, со старого хостинга на компьютер, а потом, точно также, закинуть их на новый сервер в папку public_html, отвечающую за работу переносимого домена.

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

Скачиваем файлы на компьютер:

Если ваш ресурс очень простой (выполнен на простом HTML) и не имеет баз данных, то пункты с 3 по 6 можно пропустить. Но любой сайт, использующий систему управления контентом (CMS), требует для своей работы базу данных MySQL, ее тоже необходимо перенести.

Для этого в админке вашего старого хостинга находите раздел «Управление базами данных MySQL». Заходите в панель администратора phpMyAdmin. Выбираете нужную базу и выбираете вкладку «Экспорт».

В меню экспорта базы данных установите для скачивания архивный формат ZIP или GZIP. Нажимаете кнопку “ОК” и указываете место на вашем компьютере, куда будет сохранен файл.

Точно также, как и в предыдущем пункте, открываете на другом хостинге раздел «Управление базами данных» (Базы MySQL), только вместо выбора нужной базы – выбираете пункт создать новую базу данных.

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

Нажимаете кнопку создать, и у вас появится новая база данных. Если вы перейдете внутрь этой базы, то там не будет ни одной таблицы, пока она пуста.

После того, как вы создали новую базу данных, необходимо скопировать на нее информацию из той базы, которую вы экспортировали со старого сервера. Для этого выбираете меню «Ипморт». Через окно указываете путь к базе, сохраненной на вашем компьютере, и нажимаете импортировать.

Все таблицы будут созданы и заполнены автоматически. На серверах разных провайдеров может использоваться разное программное обеспечение, поэтому, несмотря на полную совместимость всех баз, иногда, могут возникать проблемы. У меня выскочила ошибка 1062, решение проблемы я описал здесь. В 99% случаев перенос пройдет гладко.

После того, как мы перенесли файлы и базу данных, нам нужно связать их между собой. Для этого найдите конфигурационный файл вашей CMS. В WordPress он называется wp-config.php, находится он в корневой директории сайта (прямо в public_html).

Открываете этот файл для редактирования и заменяете следующие строки:

/** Имя базы данных для WordPress */

/** Пароль к базе данных MySQL */

Вместо XXX вы прописываете значения, которые указывали при создании базы данных. Это нужно, чтобы файлы вашей CMS подключились к базе и могли обмениваться с ней информацией.

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

Проверяем работу сайта на новом хостинге:

– некоторые хостинги для каждого сайта создают технический домен. Обычно это домен 4 уровня, похожий на moysait.ru.hosting.ru – по этому адресу ваши страницы работают, даже если не работает ваш основной домен. Проверьте, если там все функционирует нормально, значит, переходите к следующему пункту.

– другой вариант подойдет в том случае, если технический адрес на вашем хостинге не предоставляется, но у вас есть на нем другие, работающие домены. Вы можете создать для одного из них поддомен типа test.sait.ru . Подключить этот поддомен к папке public_html вашего нового сайта и проверить как и в предыдущем случае.

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

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

Заходим в ваш аккаунт у регистратора доменных имен, если вы регистрировали домен напрямую у регистратора. Находите раздел «управление DNS» и делаете запрос на их замену. Новые значения вам нужно найти либо на сайте нового провайдера, либо узнать их через техническую поддержку.

Выглядят эти записи примерно вот так (это для моих хостингов):

ns1.timeweb.ru
ns2.timeweb.ru
ns3.timeweb.org
ns4.timeweb.org

У любого другого хостера DNS записи свои.

В том случае, если ваш домен регистрировался через хостинг компанию – обратитесь для смены DNS в ее доменную службу или техподдержку.

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

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

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

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

Я купил новый хостинг, что дальше?

Дальше есть два варианта: хостинг-провайдер предоставляет технический домен (обычно имеет вид тест1.провайдер.ru) или не предоставляет. В первом варианте, Вы можете протестировать работу точной копии сайта на новом хостинге, при этом старый сайт будет все также работать на старом хостинге. И если что-то пойдет не так, то Вы увидите ошибки только на копии сайта (техническом домене). Во втором варианте права на ошибку у Вас не будет, и негативные результаты переноса (если они будут) увидят посетители Вашего сайта.

Большинство современных провайдеров предоставляют технические домены, о том как их активировать узнавайте на сайте хостера.

Не зависимо от наличия технического домена нашей основной задачей будет копирование файлов сайта и базы данных, от старого хостинг-провайдера к новому.

Как грамотно все это скопировать?

О копировании файлов сайта читаем эту статью, о грамотном переносе базы данных – вот эту статью.

Также не забудьте сделать (если требуется) все остальные настройки, которых требует Ваш сайт (почтовые ящики, PHP, Cron и т.д.). Еще очень важно в конфигурационных файлах (config.php, configuration.php , wp-config.php или что-то подобное) изменить имена пользователя и базы данных, пароль, а также абсолютные пути к папкам log и tmp. Ведь на новом хостинге они имеют другие значения.

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

Чтобы изменить DNS-адреса, Вы должны знать где зарегистрирован Ваш домен. Например наш домен ru.hostings.info зарегистрирован у специального регистратора доменов, и в панели управления мы можем указать DNS-адреса какого угодно провайдера (сегодня пользуемся одним хостингом, если завтра он нам перестанет нравится, то указываем DNS-сервера другого и переносим сайт к нему). Или же второй вариант – домен и хостинг закреплены за одним и тем же провайдером, но в любом случае Вам нужно найти панель управления Вашим доменом, и изменить DNS-записи на те, которые прислал Вам новый провайдер в первом письме с настройками (или же ищите их в его панели управления).

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