Перенос сайта WordPress с виртуального хостинга на VPS

Перенос сайта WordPress с виртуального хостинга на VPS

Вступление

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

В этом руководстве, мы поможем вам сделать перенос сайта WordPress с виртуального хостинга на VPS сервер, но эта тактика может быть применена к любому другому виду сайтов.

Что понадобится

  • Доступ к вашему хостинг-аккаунту на виртуальном хостинге и на VPS.

Шаг 1 – Создание бэкапа вашего сайта

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

В этом примере покажем, как можно сделать бэкап из Панели Управления Hostinger:

  1. Зайдите в Панель Управления Hostinger;
  2. Выберите Бэкапы в разделе Файлы;
    Бэкапы в Панели Управления Hostinger
  3. После входа в раздел Бэкапы вы увидите список файлов. Колонка Тип указывает на то, это бэкап для базы данных MySQL или для файлов сайта. Для уже сформированных бэкапов, вы можете увидеть дату в колонке Дата Бэкапа. Вы можете создать новый бэкап, если пожелаете. Для этого выполните эти шаги:
    1. Нажмите на кнопку Создать новый бэкап внизу.
    2. Затем отобразится приветственное сообщение, нажмите Да. Начнётся создание бэкапа.
      Создание бэкапа в Hostinger
  4. Когда бэкап создан (или уже был создан ранее), скачайте оба для MySQL и для файлов сайта, нажав на кнопку Скачать в колонке Действие.
    ПУ Hostinger

После создания бэкапов, можно переходить с настройке VPS сервера.

Шаг 2 – Настройка VPS

В разделе мы рассмотрим как настроить VPS сервер. Рекомендуем выбрать шаблон, в котором установлены LAMP, MySQL и Webmin/Virtualmin. Управлять сервером с такими шаблонами будет проще в будущем.

Как вариант, вы можете установить свой собственный стек (без GUI). Некоторые полезные руководства, о том как устанавливать другие стеки:

Чтобы изменить операционную систему на вашем VPS и установленное программное обеспечение, следуйте шагам ниже:

  1. В панели управления Hostinger перейдите в раздел Серверы.
  2. Прокрутите вниз пока не доберётесь до панели Другие настройки.
  3. Для Операционная система выберите Ubuntu 16.04 64bit with Webmin/Virtualmin/LAMP и нажмите Сохранить изменения.

Шаг 2.1 – Доступ к Webmin / Virtualmin

Теперь подождите несколько минут для установки новой операционной системе и продолжайте дальнейшую настройку своего VPS:

  1. Ваши данные VPS: IP, адрес, имя пользователя, SSH порт, а также другие детали, собраны в SSH Details. Если вы не знаете своего пароля root, вы можете его сбросить в этом же разделе (необходимо несколько минут для обновления внесённых изменений).
    Изменение пароля root VPS Hostinger
  2. Теперь войдите и скопируйте IP-адрес вашего VPS, добавьте https вначале него и порт :10000 в конце, чтобы зайти в Webmin / Virtualmin. Это будет выглядеть примерно так: https://195.110.59.211:10000
  3. Теперь вы увидите приветственное окно, введите данные доступа к вашему SSH для входа.
    Вход в Webmin на VPS
  4. Теперь вы увидите Webmin Post-Installation Wizard, который проведёт вас шаг за шагом по установке. Нажимайте кнопку next, чтобы начать установку.

Шаг 2.2 – Установка Virtualmin

Мы пройдёмся по всем шагам установки один за одним:

  1. Memory (память):
    1. Preload Virtualmin libraries? : Рекомендуется выбрать No, так как мы не используем GUI очень часто, а основная работа будет производиться по SSH.
    2. Run email domain lookup server?: Если email-письма важны для вас и вы планируете запустить Email сервер на вашем VPS, выберите Yes; это поможет сделать сервис email быстрее. Обратная сторона этого выбора состоит в том, что будет использоваться больше RAM.
  2. Virus scanning: Рекомендуем разрешить сканер вирусов ClamAV, то есть выбрать Yes. 
  3. Spam filtering: Значение этой настройки хорошо объяснено в описании. В кратце, если вы хотите запустить email-сервер на своём VPS, включите сервер SpamAssassin.
  4. Database servers: Выберите сервис базы данных, используемый на сервере. Чаще всего, вам потребуется только сервер баз данных MySQL.
  5. MySQL password: Для предотвращения управления базой данных MySQL другими пользователями вашей системы, необходимо установить пароль для главного пользователя. Вводите надёжный, безопасный пароль.
  6. MySQL database size: Здесь хорошо расписано, в каких ситуациях, какие настройки нужно выбирать. Однако, рекомендуем выбрать настройку Medium, если вы не уверенны в том, какую вам нужно.
  7. DNS Zones: Для DNS зон, созданных Virtualmin для разрешения, основной сервер имён для каждой зоны должен быть установлен на такое значение, которые будет разрешаться другим системами в интернете. Так как мы направили домен на сервер VPS по A записи, на данный момент нам не нужно задавать приватный сервер имён. Таким образом, выбираем Skip check for resolvability.
  8. Passwords: Настоятельно рекомендуем выбрать опцию Only store hashed passwords, так как это защитит шифрованием все сохраняемые вами пароли.
  9. И это всё. Настройка Virtualmin завершена. Теперь вы увидите кнопку Re-check and refresh configuration. Нажмите её для проверки правильности установки сервера и его работы.
    Обновление Webmin

Шаг 2.3 – Создание виртуального сервера

Теперь нам нужно создать пользователя, базу данных MySQL и каталог для сайта. Всё это можно сделать, используя Virtualmin:

  1. Нажмите Create Virtual  Server.
  2. Введите доменное имя и пароль администратора и нажмите кнопку Create Server. Простой сервер будет создан и этого будет достаточно для размещения сайта.
    Создание виртуального сервера на VPS

Шаг 3 – Перенос файлов сайта на VPS

Теперь, когда мы установили сервер VPS, мы перенесём наши файлы сайта и базу данных один за другим с сервера виртуального хостинга.

Будем использовать команду wget для скачивания архивов бэкапа, которые мы создавали на Шаге 1.

  1. Соединитесь по SSH с вашим сервером VPS (Смотрите здесь в случае, если вы не знаете, как это сделать).
  2. Как только подключились, смените свой каталог на рабочий, тот, где будут храниться файлы вашего сайта. Virtualmin автоматически создаёт каталог основываясь на имени домена. Например, для домена hostinger-tutorials.com он создаст каталог под названием hostinger-tutorials.com. Таким образом, для доступа к нему мы можем использовать команду:
    cd /home/hostinger-tutorials/public_html/
  3. Теперь вернёмся к разделу Панели Управления Hostinger -> Бэкапы и скопируем ссылку для скачивания архивов бэкапов файлов вашего сайта. Это вы можете сделать нажатием правой кнопки мыши по кнопке Скачать и выбором из появившегося меню Copy Link Address.
  4. Выполните следующую команду для скачивания архива с бэкапом на VPS (не забудьте изменить адрес ссылки):
    wget http://server64.main-hosting.eu:8080/download-backup/cfb1f54144e0cf4394a247dca73f48f8d04c9cb6/u694443746.tar.gz
  5. Теперь распакуйте архив:
    tar -xvf u694443746.tar.gz
  6. Это создаст новый каталог внутри public_html, который будет содержать все файлы вашего сайта. Название этого каталога будет совпадать с ID вашего аккаунта на виртуальном хостинге Hostinger. Таким образом, нам нужно переместить все файлы в каталог public_html. Есть несколько путей это сделать, но основной – следующий:
    1. Зайдите в распакованный каталог public_html (в котором находятся все файлы вашего сайта):
      cd u694443746/public_html/
    2. Переместите все файлы в новый public_html, созданный Virtualmin:
      mv * ../../
  7. Теперь зайдите в каталог public_html, созданный Virtualmin:
    cd ../../
  8. Проверьте все файлы, перемещённый этой командой:
    ls

    Вы увидите что-то похожее на это:
    Создание виртуального сервера на VPS

  9. Как вы видите все файлы были перемещены верно в каталог public_html. Однако, наша работа на этом не заканчивается. Эти файлы и каталоги имеют неверные права доступа. Нам надо сменить их, чтобы они соответствовали тем, что созданы Virtualmin. Так же, как каталог, Virtualmin создаёт пользователей и группы, основываясь на доменном имени. Таким образом, чтобы изменить права доступа мы может использовать такую команду (помните, hostinger-tutorials нужно изменить на свой вариант):
    chown hostinger-tutorials:hostinger-tutorials -R *

    Теперь успешно мы переместили все ваши файлы с виртуального хостинга на сервер VPS. Следуйте шагам ниже, для переноса базы данных и финальному шагу, когда всё заработает!

Шаг 4 – Перемещение файлов Базы данных на VPS

Теперь, когда мы уже переместили наши файлы, будем перемещать базы данных. Так же, как и для файлов, будем использовать wget для скачивания бэкапов из раздела бэкапов на Hostinger (как показано на Шаге 1) и импортировать все таблицы в вашу базу данных на VPS сервер.

Помните, база данных MySQL уже была создана во время создания Виртуального Сервера. Таким образом, вам не нужно дополнительно создавать базы данных.

Шаг 4.1 – Проверка имени и пароля Базы данных MySQL

Чтобы сделать импорт бекапов базы MySQL и завершить процесс перемещения, нужно вначале найти имя новой базы данных, имя пользователя и пароль. Имя базы данных может быть найдено в панели управления Virtualmin, в разделе Edit Databases.

Настройка БД в Webmin

Имя и пароль базы данных MySQL можно найти в этом же разделе во вкладке Passwords.

В нашем примере, детали MySQL:

  • MySQL Database Name – hostinger_tutorials
  • MySQL Username – hostinger-tutorials
  • MySQL User Password – OTuXH1IVHdtMpQS7

Шаг 4.2 – Скачивание и импортирование бэкапов MySQL

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

  1. Перейдём к разделу Бэкапы и нажмём на Copy link address для бэкапов базы данных MySQL.
  2. На нашем VPS мы создадим новый и зайдём в него. Сохраним архив бэкапа MySQL backup здесь.
    mkdir sql_backup && cd sql_backup
  3. После того как зашли в каталог, скачиваем файл с бэкапов хостинга при помощи wget на наш VPS сервер.
    wget http://server64.main-hosting.eu:8080/download-backup/dd8604b60a0178f0d9b7a2665261001400388d62/u694443746_meryr.sql.gz
  4. Как только файл закачан распаковываем SQL-файлы из архива, используя команду gunzip
    gunzip u694443746_meryr.sql.gz
  5. Теперь вы получите файл с таким же названием формата .sql, можем сбросить всё, что в нём в базу данных командой (помните, что нужно поменять имя архива MySQL)
    mysql -u root -p hostinger_tutorials < u694443746_meryr.sql
  6. Тепер вы успешно импортировали все таблицы из файла бэкапа в базу данных нашего сервера.

Шаг 5 – Вносим финальные изменения

Теперь, когда перенесены и файлы сайта, и файлы базы данных на сервер VPS, ваш сайт WordPress ещё не будет работать корректно. Скорее всего вы получите ошибку Как исправить ошибку Error Establishing a Database Connection в WordPress. Чтобы её исправить, нужно отредактировать файл wp-config.php и изменить в нём детали базы данных MySQL на новые.

Для запуска нашего сайта воспользуемся встроенным редактором файлов командной строки nano для внесения изменений в конфиг файл.

Чтобы отредактировать файл wp-config.php следуйте шагам ниже:

  1. Войдите в каталог, где хранятся файлы вашего сайта, используя команду cd.
     cd /home/hostinger-tutorials/public_html/
  2. После этого мы увидим все файлы в текущем каталоге. Проверяем наличие файла wp-config.php.
     ls

    Настройка БД в Webmin

  3. Как только убедитесь, что файл существует, открывайте его для редактирования в текстовом редакторе nano.
     nano wp-config.php
  4. Теперь, когда файл открыт в режиме редактирования, промотайте вниз к строке  // ** MySQL settings – You can get this info from your web host ** //
     // ** MySQL settings - You can get this info from your web host ** //
    
     /** The name of the database for WordPress */
    
     define('DB_NAME', 'u694443746_meryr');/** MySQL database username */
    
     define('DB_USER', 'u694443746_tatym');/** MySQL database password */
    
     define('DB_PASSWORD', 'byMaHuTuMu');/** MySQL hostname */
    
     define('DB_HOST', 'mysql');
  5. Теперь обновите следующие значения:
    • DB_NAME – имя базы данных MySQL. Мы уже знаем его с Шага 4.1
    • DB_USER – имя пользователя MySQL.
    • DB_PASSWORD – пароль MySQL.
    • DB_HOST – введите здесь localhost, так как наша база данных MySQL находится на том же сервере.
  6. После внесения изменений нажмите CTRL + X на клавиатуре и затем нажмите Y и ENTER, чтобы сохранить изменения в файле.

Последним шагом будет направление доменного имени на сервер VPS с сервера виртуального хостинга. Самый простой способ это сделать обновить A запись.

Информация о нашем доменном имени находится на серверах имён Hostinger, поэтому A запись нужно установить в Панели управления Hostinger -> Редактор DNS зоны. Просто установите IP-адрес вашего VPS как A запись и нажмите кнопку Сохранить.

Изменение DNS Hostinger

Примечание: Изменение DNS может занять 24 часа.


Более подробное руководство о том, как направлять доменное имя на VPS сервер можно найти здесь.

Заключение

В руководстве Перенос сайта WordPress с виртуального хостинга на VPS мы успешно перенесли и запустили ваш существующий сайт на новый VPS сервер. Рекомендуем вам делать регулярные бэкапы на вашем сервере для безопасности и сохранности ваших данных.

Author
Автор

Elena B.

Елена имеет профессиональное техническое образование в области информационных технологий и опыт программирования на разных языках под разные платформы и системы. Более 10 лет посвятила сфере веб, работая с разными CMS, такими как: Drupal, Joomla, Magento и конечно же наиболее популярной в наши дни системой управления контентом – WordPress. Её статьи всегда технически выверены и точны, будь то обзор для WordPress или инструкции по настройке вашего VPS сервера.