ВОЙТИ
    opened image

    Копирование сайта CMS WordPress с VestaCP при помощи SSH


    В прошлой статье мы показали как можно сделать копирование/перенос сайта с одного домена на другой при помощи FTP. Теперь мы покажем, как сделать это подключившись к серверу по SSH.

     

     

    Данный метод является быстрее в исполнении, так как все действия мы выполняем внутри сервера ничего не скачивая / загружая на сервер. Новое доменное имя должно быть направлено на IP-адрес сервера. Как это сделать, смотрите в соседней инструкции - "Как добавить домен в DNS-хостинг". Как подключиться к серверу по SSH, Вы можете ознакомиться в этой инструкции "Подключение к серверу по SSH". Итак, приступим.

     

    Основная часть

     

    Вы подключились к серверу. Теперь необходимо перейти в директорию /home/admin/web , изначально Вы находитесь в домашней директории пользователя /root. Пропишем команду:

     

    cd /home/admin/web/

     

     

    После этого создадим новый домен и базу данных с помощью встроенных команд Vesta CP:

     

    v-add-domain USER DOMAIN [IP] [RESTART]
    /usr/local/vesta/bin/v-add-domain admin zomro-new-domain.com
    v-add-database USER DATABASE DBUSER DBPASS [TYPE] [HOST] [CHARSET]
    /usr/local/vesta/bin/v-add-database admin zomro_new zomro_new zomro_new

     

     

    В команде v-add-domain нам достаточно указать пользователя панели управления, который будет владеть доменом и собственно название домена. Если у Вас несколько IP-адресов на сервере, тогда следует после названия домена прописать нужный Вам IP-адрес, например:

    /usr/local/vesta/bin/v-add-domain admin zomro-new-domain.com 127.0.0.1

     

    Для команды v-add-database достаточно будет вписать пользователя панели управления, название базы данных, пользователя базы данных и пароль. Заметьте, что команда работает аналогично версии через браузер, имя пользователя будет префиксом к названию базе данных: admin_zomro_new.

    Для копирования всех файлов, включая скрытых, с сохранением параметров директорий и файлов воспользуемся следующей командой:

     

    cp -rp zomro-old-domain.com/public_html/. zomro-new-domain.com/public_html/

     

     

    Переходим в директорию нового домена, выполняем поиск названия базы данных в файле wp-config.php:

     

    cd zomro-new-domain.com/public_html/
    grep "DB_NAME" wp-config.php

     

    Делаем дамп файл через команду mysqldump и выполняем замену старого домена на новый:

     

    mysqldump admin_zomro > admin_zomro.sql
    sed -i "s/zomro-old-domain.com/zomro-new-domain.com/g" admin_zomro.sql

     

     

    Импортируем дамп файл в новую базу данных и изменяем в конфигурационном файле wp-config.php данные для подключения к базе данных. Для редактирования файлов внутри сервера мы используем текстовый редактор Vim, Вы же можете использовать Nano, mcedit, к примеру, дело вкуса. Для Vim команды ниже:

     

    mysql admin_zomro_new < admin_zomro.sql
    vim wp-config.php

    Внутри файла нажимаем с английской раскладкой на латинскую букву I , что означает Insert , переходим на нужную нам строку и вносим правки. Для выхода из файла и сохранить наши изменения нажмём Esc , а после комбинацию Shift + : , после знака двоеточия необходимо вписать две буквы: wq. Если Вы вдруг что-то не то удалили или не так отредактировали файл, то Вы можете нажать на кнопку Esc и после этого латинскую букву U , что означает Undo , то есть вернуть, нажмите столько раз, сколько хотите сделать возвратов назад. Если хотите выйти из файла без сохранения, то нажмите на клавишу Esc, комбинация Shift + : , !wq , так файл не сохранится и Вы выйдите из текстового редактора. Сделайте изменения в файле robots.txt и на этом перенос можно считать завершенным.

    Отдельные моменты
    1) Если в базе данных не будет изменен домен на новый, тогда сайт автоматически будет выполнять переадресацию на старый домен.
    2) В файле .htaccess у Вас может быть прописан путь к плагину кэширования, если он имеется. Также, следует проверить файл на наличие редиректов, которые упоминают старый домен.
    3) Если У Вас вместо сайта показывается серый экран с названием Вашего домена, не переживайте, удалите файл index.html – это заглушка для сайта, которую создаёт панель управления при создании домена.
    4) У Вас в конфигурационном файле wp-config.php могут быть следующие константы: wp_home и wp_siteurl , которые необходимо редактировать под Ваш новый домен.
    5) Если для первого домена подключен SSL-сертификат, то и для второго желательно его подключить. В панели управления Vesta CP => вкладка "Web" => выберете домен => кнопка "Edit" => "SSL Support" => "Let's Encrypt Support". Доменное имя должно быть направлено на сервер с которого Вы генерируете к нему SSL-сертификат.