Как перенести ваш сайт с одного хостинга на другой

Опубликовано: 2022-07-05

Вы готовы перейти на управляемый хостинг для своего сайта на Magento или WordPress. У вас есть новая услуга в Nexcess, но как вы на самом деле совершаете скачок?

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

Что такое миграция?

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

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

Как перенести ваш сайт на Nexcess: самый простой способ

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

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

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

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

Как перенести ваш сайт вручную (для пользователей WordPress)

Если вы используете WordPress, простой способ перенести вашу CMS в Nexcess Cloud — использовать наш удобный плагин для миграции. Этот плагин устанавливается на ваш исходный сайт и извлекает все необходимые данные непосредственно в целевой аккаунт хостинга, используя учетные данные FTP, которые вы предоставляете из панели управления Nexcess.

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

Как перенести сайт с одного хостинга на другой вручную за 8 шагов

Собираетесь попробовать? Вот шаги, необходимые для ручного копирования файлов и базы данных от ЛЮБОГО исходного поставщика с ЛЮБОЙ поддерживаемой CMS в Nexcess Cloud.

В нашем примере мы будем переносить сайт Magento с AWS.

1. Прежде чем начать

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

Предполагая, что вы использовали Lightsail для установки своего экземпляра Magento в AWS, вы сможете подключиться к своему экземпляру с панели управления AWS и использовать окно терминала в своем браузере.

Ваши учетные данные Nexcess SFTP/SSH также находятся на панели управления вашего плана. Вам нужно будет сгенерировать новый пароль, если вы никогда раньше не подключались к SFTP/SSH в своей облачной учетной записи. Запишите это где-нибудь в безопасном месте.

Как и прежде, вам нужно будет узнать, где размещен DNS для вашего текущего сайта. Это записи, которые переводят ваше доменное имя в IP-адрес, и мы обновим их в конце миграции. Как правило, это можно узнать, просмотрев записи NS.

2. Подключение ваших машин

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

Для этого в вашем Nexcess Cloud есть множество инструментов, доступных из его оболочки SSH, включая rsync, ssh, lftp и scp. Мы будем использовать ряд этих команд для завершения миграции.

Сначала мы подключим SSH к учетной записи AWS. Следуйте этим инструкциям от Amazon, чтобы подключиться к веб-терминалу вашего сервера.

Теперь, когда мы находимся на исходном компьютере, мы можем использовать однострочную SSH-команду, указанную на панели инструментов вашего плана, чтобы получить оболочку на вашем целевом сервере:

 ssh [email protected] “echo hello”

Эта строка запросит у вас пароль пользователя Nexcess. Как только вы введете его, компьютер AWS подключится к облачному серверу Nexcess. Запустите команду «echo hello» (вывод слова «hello» на терминал), а затем выйдите из сеанса SSH. Если вы видите «привет», значит, вы успешно прошли аутентификацию, и мы готовы к миграции!

3. Поиск данных

Файлы в вашем экземпляре AWS, если вы использовали установку Lightsail Bitnami Magento, будут находиться либо в /opt/bitnami/magento/, либо в /opt/bitnami/apps/magento/htdocs/ в зависимости от возраста вашего сервера.

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

Мадженто 1:

 grep -e username -e password -e dbname \ /opt/bitnami/apps/magento/htdocs/app/etc/local.xml

Мадженто 2:

 grep -e username -e password -e dbname \ /opt/bitnami/apps/magento/htdocs/app/etc/env.php

Теперь терминал должен отображать имя пользователя, пароль и имя базы данных для базы данных Magento. Вы можете использовать их с программой командной строки 'mysql', чтобы войти в вашу базу данных, заменяя примерные данные соответствующим образом:

 mysql -u aws_username -p"aws_password" aws_dbname

Теперь вы можете ввести «показать таблицы»; и mysql должен распечатать список таблиц в вашей базе данных. Введите «выход»; чтобы выйти из интерфейса командной строки mysql.

4. Копирование данных

Мы знаем, где находятся наши данные на AWS, поэтому давайте поместим их в Nexcess Cloud. Все эти команды будут выполняться на терминале AWS. Замените данные примера в командах в соответствии с вашей установкой.

Сначала создадим временную директорию на сервере Nexcess:

 ssh [email protected] "mkdir migration"

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

 mysqldump -u aws_username -p"aws_password" aws_dbname | ssh \ [email protected] "cat - > aws_dbname.sql"

Наконец, мы можем скопировать папку сайта на новый сервер с помощью rsync:

 rsync -avHP /opt/bitnami/apps/magento/htdocs/ \ [email protected]:~/migration/

Полная копия всего корня документа теперь будет поступать на сервер Nexcess в папке миграции.

5. Организация файлов и баз данных

Теперь, когда созданы копии корня документа и базы данных, мы должны рассортировать их по соответствующим местам в целевой системе. Давайте сначала поменяем файлы. Подключите свой SSH к целевому серверу, снова используя однострочную команду с панели управления, но на этот раз с вашего компьютера. Нам больше не нужно использовать сервер AWS. Если вы используете OSX, Linux или Windows 10, команда SSH уже должна быть установлена ​​из вашей оболочки или командной строки.

Как только мы подключились к среде Nexcess Cloud, перечислите содержимое текущего каталога, и вы увидите свою базу данных (aws_dbname.sql) и папку с файлами сайта (миграция).

Корень документа для вашего работающего сайта находится в папке вашего временного домена Nexcess. Этот домен выглядит примерно так: «49deab9ef.nxcli.net». В этом случае корневой каталог нашего документа будет 49deab9ef.nxcli.net/html/. Сначала мы перемещаем этот каталог в сторону:

 mv ~/49deab9ef.nxcli.net/html ~/49deab9ef.nxcli.net/html.bak

... и затем переместите наш реальный корень документа на место:

 mv ~/migration ~/49deab9ef.nxcli.net/html

Наконец, мы настроим права доступа к папке, чтобы веб-сервер мог обеспечить ее безопасность:

 chmod 750 ~/49deab9ef.nxcli.net/html

Теперь, когда файлы на месте, нам нужно обнаружить учетные данные нашей базы данных Nexcess. Они хранятся в старом файле конфигурации CMS, поэтому снова мы используем «grep» для вывода этой информации (здесь показан Magento 2):

 grep -e username -e password -e dbname \ ~/49deab9ef.nxcli.net/html.bak/app/etc/env.php

Запишите всю эту информацию в надежном месте; мы будем использовать его, чтобы закончить этот раздел урока. Теперь давайте сделаем резервную копию этой базы данных и заменим ее дампом базы данных с нашего сервера AWS:

 mysqldump -u nx_username -p"nx_password" \ nx_dbname > ~/49deab9ef.nxcli.net/old_database.sql mysql -u nx_username -p"nx_password" nx_dbname < ~/aws_dbname.sql

6. Настройка базы данных и URL-адресов

Есть еще один шаг, чтобы соединить файлы и базу данных вместе. Нам нужно изменить файл конфигурации для Magento, чтобы убедиться, что он использует учетные данные учетной записи Nexcess. Откройте файл с помощью nano и возьмите все экземпляры информации базы данных AWS и замените ее информацией базы данных Nexcess:

 nano ~/49deab9ef.nxcli.net/html/app/etc/env.php

Когда вы закончите редактирование файла, нажмите Ctrl+X, чтобы выйти, и редактор предложит вам сохранить; нажмите «y», чтобы записать файл на диск.

В дополнение к этому сайт должен быть настроен для использования правильного временного доменного имени от Nexcess, которое будет выглядеть примерно как «49deab9ef.nxcli.net». Для Magento это делается путем редактирования нескольких строк в базе данных из PHPMyAdmin. Вы можете получить доступ к PHPMyAdmin через портал Nexcess.

Как только мы окажемся в PHPMyAdmin для перенесенного сайта, мы должны увидеть скопированные данные Magento. Мы хотим перейти к таблице core_config_data и изменить строки web/unsecure/base_url и web/secure/base_url, чтобы они соответствовали нашему временному домену, без и с https, если это необходимо. Сохраните эти изменения, нажав клавишу возврата, и выйдите из PHPMyAdmin.

7. Проверка ваших данных

Это должно завершить фактическую миграцию данных. Теперь нам просто нужно убедиться, что то, что мы сделали, сработало. Это самая простая часть миграции. Просто перейдите по временному URL-адресу Nexcess (например, 49deab9ef.nxcli.net) в браузере.

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

8. Выход в эфир

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

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

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

Теперь важно убедиться, что Let's Encrypt включен для этого домена, чтобы сертификат SSL был установлен автоматически.

Сделать это проще

Миграция сайта — непростая и не быстрая задача, даже если ее можно выполнить. У кого есть время, чтобы сделать все это плюс их повседневная работа? Возьмите одну вещь с вашей тарелки с помощью Nexcess.

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

Готовы узнать, почему Better встроен?

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

Изучите планы MagentoИзучите планы WordPress

Связанный контент

  • 5 шагов к успешной миграции веб-сайта
  • Миграция в облако: пошаговое руководство по переносу вашего сайта в облако
  • Превратим старые стоги в новые: история перехода с Magento 1 на WooCommerce
  • 10 главных вопросов, которые нужно задать провайдеру облачного хостинга
  • Что такое управляемый хостинг? Как это работает