Чтобы перенос сайта на другой хостинг прошел без осложнений, к нему нужно готовиться еще при создании сайта. К счастью, все современные системы управления (так называемые «админки») позволяют сделать это без дополнительных усилий. Всего-то нужно придерживаться нескольких простых правил.
Пользуясь готовыми библиотеками и системами управления, мы автоматически накладываем на свой проект список вполне конкретных технических ограничений по их использованию. Это один из ключевых моментов при выборе хостинга, ведь часть из них могут быть достаточно специфичными, чтобы не включать в список настроек по умолчанию выбранного вами хостинга. Поэтому самый простой способ уберечь себя от пустой траты времени — создать, своевременно актуализировать требования и хранить этот список наравне с паролями.
Вам даже не нужно разбираться в деталях. Достаточно при создании сайта запросить требования у веб-студии. При любых доработках обязывать обновлять этот список всех подрядчиков. При выборе нового хостинга предъявлять его консультантам для проверки на соответствие.
В качестве примера, чтобы вас быстрее поняли, можете использовать этот:
В самом грубом приближении сайт – это набор файлов и папок. В зависимости от системы управления у них может быть довольно большой уровень вложенности, содержащий в себе тысячи разных файлов. Чтобы сайт функционировал, он должен хранить информацию, где какие файлы лежат. Так вот, важный момент, с которым постоянно приходится сталкиваться при переносе самописных систем управления на другой хостинг – это замена путей к файлам.
Все пути к файлам сайта (картинки, модули, библиотеки, т.д.) должны быть указаны относительно корневой директории.
Пример файла конфигурации сайта:
Плохо | Хорошо |
Сайт = /var/www/ Фотогалерея = /var/www/assets/gallery Блог = /var/www/assets/blog Проекты = /var/www/projects При переносе сайта для замены информации о папках вам нужно будет в нескольких тысячах файлах заменить все адреса, это довольно скучная, рутинная и болезненная операция. |
Сайт = /var/www/ Фотогалерея = Сайт + /assets/gallery Блог = Сайт + /assets/blog Проекты = Сайт + /projects Достаточно изменить корневую директорию /var/www на новую /home/u9986/www и все дочерние директории автоматически станут также доступны. |
Тоже самое касается доменного имени сайта (прим. hardkod.ru) и протокола сайта http/https. Может случиться так, что вам придется их изменить. Везде и всегда при выводе ссылок на сайте (каталог, меню, ссылки в тексте), вставке картинок в тексте лучше использовать относительный адрес /o-kompanii или /files/logo.png вместо полного абсолютного https://hardkod.ru/files/logo.png включающего протокол http/https, домен, путь. К счастью, все современные системы: Joomla, WordPress, Bitrix, т.д. при переносе на другой хостинг делают это автоматически для каталогов и меню, контактных форм, а вам лишь остается соблюдать это простое правило при наполнении страниц текстами и картинками.
Вдруг вам будет интересно. Если ваш сайт принимает платежи или хранит пользовательские данные (личный кабинет), то в статье Как подключить SSL-сертификат и зачем нужен HTTPs описаны основные моменты, а главное содержится информация о том, как получить SSL сертификат БЕСПЛАТНО!
Все это кажется таким несущественным, но поверьте, это только пока ваш сайт состоит из 5 страниц в паре разделов. Как только количество разделов перевалит хотя бы за несколько сотен, если заранее об этом не позаботиться, то цена за перенос сайта на другой хостинг вместо пары тысяч рублей может обзавестись абсолютно лишним нулем в конце практически на ровном месте.
Перед тем как воспользоваться инструкцией, если ваш сайт не требователен к настройкам, то однозначно имеет смысл проверить список бесплатных услуг хостера. Возможно там есть услуга по копированию сайта. Сейчас конкуренция достаточно высока, что положительно влияет на качество сервиса и способствует появлению таких замечательных опций.
Все сайты очень разные, поэтому ниже лишь общие рекомендации. Для переноса на другой хостинг систем: 1С-Битрикс (Bitrix), Opencart, Modx, WordPress вы найдете ссылки в конце статьи.
И так приступим, для начала нам понадобятся доступы (логин и пароль к услугам):
Когда вы набираете адрес в строке браузера, тот запрашивает информацию на каком хостинге находится сайт у вашего провайдера интернета. Поэтому после физического переноса файлов, базы данных, настроек сайта и полной проверки нам понадобится обновить эту информацию (подробнее в главе делегирование домена). Чтобы иметь возможность проверить работу сайта до делегирования, все современные хостинги предоставляют временное доменное имя (прим. ab123.tmweb.ru).
Данный шаг является необязательным, т.к. не все сайты используют базы данных. Мы рассмотрим наиболее частый случай с популярной базой данных MySQL. Если ваш сайт работает под управлением систем: Битрикс (Bitrix), Joomla, Drupal, WordPress, Opencart, ModX, WebAsyst, UMI.CMS, NetCat, тд)
Процесс экспорта/импорта данных идентичен, поэтому нет смысла описывать операцию дважды. Удобнее всего скопировать базу, используя phpmyadmin, он гарантированно будет установлен на вашем старом и новом хостинге, а ссылка находится в письме от хостера доступами или в личном кабинете в разделе “Базы данных”.
Авторизуемся, используя доступы к базе данных или отдельно присланные вашим старым хостером. Выбираем в левой колонке нужную базу данных и переходим в закладку Экспорт / Export.
В большинстве случаев подойдет быстрый способ экспорта с минимумом настроек. Важно выбрать формат экспорта SQL. Сохраните файл — это точная копия вашей базы, она содержит все тексты, пункты меню, товары, историю заказов и т.д.
Будьте предельно осторожны, ваш текущий сайт использует ту же самую базу для работы. В случае нарушения ее целостности сайт может отключиться, пока техподдержка хостинга не восстановит ее по вашему обращению.
Резервную копию базы данных, да пусть немного дольше, но зато без поиска доступов к phpMyAdmin, можно получить оформив обращение в техподдержку из личного кабинета. Возможно, придется подождать в течение суток, но зато вы сможете скачать и базу, и файлы как описано в следующем пункте.
Здесь нам понадобятся доступы к FTP или SSH и бесплатная программа FileZilla, которая поставляется для всех операционных систем.
Открываем менеджер сайтов (Site Manager)
Добавляем нужный протокол FTP/SSH + полученные в личном кабинете хостера логин и пароль.
Если доступы верны, вы успешно подключились, то осталось лишь скопировать всю папку с сайтом к себе на компьютер, они нам еще понадобятся. Сделать это можно, просто перетащив ее из правого окна программы в любую папку на вашем диске. Чаще всего, директория с сайтом носит название:
Если вы запрашивали техподдержку хостинга сделать резервную копию базы, то она будет лежать внутри корневого каталога сайта или рядом на уровень выше, возможно, в папках backup, restore, data
По аналогии с экспортом/скачиванием файлов и базы вам необходимо проделать те же самые операции на новом хостинге, но в обратной последовательности.
Теперь самое интересное. В зависимости от типа системы вашей управления вам необходимо найти и изменить настройки файловой системы и базы данных в файлах конфигурации. Ниже список для наиболее популярных систем.
Система управления (CMS) | Расположение файлов конфигурации Путь указан от корневой папки сайта |
Bitrix | /bitrix/php_interface/dbconn.php |
WordPress | /wp-config.php |
Joomla | /configuration.php |
ModX | /config.core.php /connectors/config.core.php /manager/config.core.php |
OpenCart | /admin/config.php /config.php |
Drupal | /sites/default/settings.php |
Prestashop | /config/settings.inc.php |
Не лишним будет проверить файл .htaccess на предмет жестко прописанных путей/перенаправлений, но будьте крайне осторожны, файл чувствителен к лишним спецсимволам, переносам строк. В случае опечаток/ошибок вы получите ошибку 500 при заходе на сайт.
Как только вы убедились, что все системы работают в штатном режиме можно переходить к делегированию домена. Идея проста. Нам нужно оповестить всех провайдеров в мире, что доменное имя должно ссылаться на новый хостинг. Сразу хочу предупредить, что этот процесс довольно длительный и вы практически не можете на это никак повлиять. Полное обновление информации занимает от 15 минут до 24 часов. Также возможны ситуации, когда два пользователя одновременно заходят на один и тот же адрес, но формально видят два разных сайта, поэтому так важно чтобы до окончания делегирования сайт на старом хостинге также работал.
Для наглядности, чтобы было легче определить какой из сайтов у вас открылся при заходе (при условии, что они полностью одинаковы) достаточно в корневой директории сайта создать текстовый документ с названием хостинга, например, /hosting.txt. Таким образом, запросив этот файл в браузере http://example.com/hosting.txt вы всегда сможете определить, завершен ли процесс делегирования.
Для того, чтобы делегировать домен на новый хостинг вам понадобится:
Все панели регистраторов/хостеров выглядят по разному, но суть вашей задачи проста. Вам нужно авторизоваться в панели регистратора, выбрать раздел “делегировать домен” или “управление NS-записями” и удалить старые, добавить новые адреса.
По истечению 24 часов убедитесь, что сайт отдает в файле /hosting.txt название вашего нового хостера и можно смело отключать старый хостинг. Резервные копии, созданные при переносе лучше не удалять (главный принцип бухучета – двойная запись), всегда полезно иметь копию своего сайта.
Поздравляю, ваш сайт успешно перенесен!
Помните, вы всегда можете обратиться за помощью к нам 8 (800) 350-81-86. HARDKOD работает со всеми существующими системами управления и имеем опыт переноса более тысячи сайтов, больших и маленьких, сложных и не очень.
По мере увеличения посещаемости веб-сайта часто возникает вопрос скорости его работы. Здесь есть несколько способов повысить скорость работы сайта, вот основные из них:
Мы используем файлы cookie для улучшения работы нашего сайта и предоставлении вам наиболее полезного контента.
Спасибо за заявку!
Наш менеджер свяжется с вами в ближайшее время.
Успешно!
Чек-лист отправлен на указанный Email-адрес