Перенос через панель управления

По этой инструкции вы сможете перенести сайт со стороннего хостинга или с другого аккаунта Timeweb. Материал рассчитан на пользователей без опыта работы с терминалом. Если вас не пугает SSH — воспользуйтесь инструкцией по переносу через терминал.

Предварительная подготовка

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

Доступ к FTP

В первую очередь потребуется FTP-доступ к серверу, с которого будет выполняться перенос.

Для работы с FTP вам понадобятся следующие данные:

  • IP-адрес или хост сервера,
  • Логин,
  • Пароль.

Если перенос выполняется между аккаунтами Timeweb

Получить данные для подключения по FTP можно на странице «Дашборд» в панели управления.

Image27

Если перенос выполняется со стороннего хостинга

Информацию о получении данных для подключения к серверу по FTP можно найти в документации хостинга или узнать данные для подключения у поддержки. Мы собрали ссылки на инструкции некоторых популярных хостинг-провайдеров:

Если на отдающем хостинге используется панель управления, получить данные для подключения по FTP можно по этим инструкциям:

Доступ к phpMyAdmin

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

Если перенос выполняется между аккаунтами Timeweb

Чтобы получить доступ к phpMyAdmin, перейдите в раздел «Базы данных» в панели управления. Включите переключатель «Полный доступ» — после этого станет доступна ссылка для входа в phpMyAdmin.

Image16

Если перенос выполняется со стороннего хостинга

Как авторизоваться в phpMyAdmin на стороннем хостинге вы можете узнать из документации хостинга или обратившись в поддержку. Собрали ссылки на инструкции некоторых провайдеров:

Если на отдающем хостинге используется панель управления, доступ к phpMyAdmin можно получить по инструкции:

Перенос файлов сайта

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

Создание сайта

  1. Откройте раздел «Сайты» → «Мои сайты».
  2. Нажмите кнопку «Создать сайт».
  3. Укажите название директории сайта. При необходимости добавьте комментарий.
  4. Нажмите на кнопку «Сохранить».

Image6

Привязка технического домена

При переносе сайта мы рекомендуем использовать технический домен. Технический домен — это бесплатный тестовый домен. Благодаря использованию технического домена вы сможете избежать простоя «боевого» сайта, так как он продолжит работать на старом хостинге до того момента, пока вы полностью не убедитесь в работоспособности перенесенного сайта.

Создать технический домен можно в разделе «Домены» → «Купить домен». Нажмите на меню выбора доменной зоны и укажите в поиске одну из доступных зон:

  • tw1.su
  • tw1.ru
  • twc1.net
  • webtm.ru

Выберите понравившуюся доменную зону, нажав на нее.

Image11

Придумайте доменное имя и нажмите на кнопку «Зарегистрировать».

Image20

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

Image15

Завершите регистрацию домена, нажав на кнопку «Зарегистрировать домен».

Работа с файловым менеджером

После создания сайта в разделе «Файловый менеджер» появится соответствующая директория. Файлы сайта должны находиться в директории /имя_сайта/public_html. После создания сайта в этой директории находится заглушка. У большинства хостингов-провайдеров файлы сайта также находятся в public_html, поэтому мы удалим текущую директорию и заменим ее копией с отдающего сервера.

Удаление заглушки:

  1. Перейдите в директорию вашего сайта.
  2. Щелкните правой кнопкой мыши по директории public_html.
  3. Выберите «Удалить» и подтвердите удаление.

Image17

Для удобства работы откроем двухоконный режим файлового менеджера:

  1. В меню выберите «Вид».
  2. Поставьте галочку «Два окна».

Image4

Подключение к FTP исходного сервера

Теперь подключимся к серверу, с которого будем переносить файлы:

  1. В меню файлового менеджера нажмите «Подключение» → «FTP-соединение».
  2. В появившейся форме введите данные для подключения.
  3. Нажмите «Подключиться».

Image31

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

Image24

В нашем случае, слева открыта папка сайта, а в правом окне — настроено удаленное подключение. Теперь перейдем в директорию сайта на удаленном сервере. В нашем случае — директория wordpress_2phrs. Перейдя в директорию, увидим, что в ней находится папка public_html.

Копирование файлов

Скопируем public_html в директорию нашего сайта. Для этого:

  1. Зажмите папку public_html левой кнопкой мыши.
  2. Перенесите ее в левое окно, в директорию нашего сайта.

Image13

Файлы именно копируются, а не перемещаются, поэтому сайт останется работоспособным на старом сервере.

Дождитесь завершения копирования. Если после переноса файлы не отображаются в файловом менеджере, обновите страницу браузера.

Перенос базы данных

Теперь необходимо создать дамп базы данных. Для этого:

  1. Откройте phpMyAdmin на сервере, с которого выполняется перенос.
  2. Выберите нужную базу данных.
  3. Перейдите в раздел «Экспорт».
  4. Нажмите кнопку «Экспорт».

Image1

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

  • WordPress — файл /wp-config.php, строка: define( 'DB_NAME', 'имя_базы' );

  • Joomla — файл /configuration.php, строка: public $db = 'имя_базы';

  • Drupal — файл /sites/default/settings.php, строка: $databases['default']['default'] = array('database' => 'имя_базы', );

  • OpenCart — файлы /config.php и /admin/config.php, строка: define('DB_DATABASE', 'имя_базы');

  • Bitrix — файл /bitrix/.settings.php, строка: 'database' => 'имя_базы',

  • MODX — файл /core/config/config.inc.php, строка: $dbase = 'имя_базы';

Если вы используете другую CMS, попробуйте найти конфигурационный файл в корневой директории сайта или в его системных папках.

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

Создание базы данных на новом сервере

Перейдем к созданию новой базы данных, в которую мы импортируем ранее созданный дамп. Для этого:

  1. Откройте панель управления и перейдите в раздел «Базы данных».
  2. Нажмите кнопку «Создание новой базы данных».
  3. В открывшемся окне укажите имя базы данных и пароль.
  4. Нажмите «Создать».

Image14

Импорт дампа базы данных

Теперь загрузим ранее созданный дамп в новую базу данных:

  1. В разделе «Базы данных» включите «Полный доступ».

  2. Нажмите кнопку phpMyAdmin.

Image25

  1. В открывшемся phpMyAdmin выберите созданную базу данных.

  2. Перейдите в раздел «Импорт».

  3. Выберите ранее скачанный .sql-файл.

  4. Пролистайте страницу вниз и нажмите кнопку «Импорт».

New

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

Настройка конфигурационных файлов CMS

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

Все изменения можно выполнить через Файловый менеджер. Для редактирования файла:

  1. Перейдите в нужную директорию.
  2. Кликните по файлу, который необходимо изменить.
  3. В открывшемся редакторе внесите изменения и нажмите кнопку «Сохранить».

Для каждой CMS список конфигурационных файлов и параметров, требующих изменения, индивидуален. Разберем наиболее популярные системы.

WordPress

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

define('DB_NAME', 'имя_БД');
define('DB_USER', 'имя_БД');
define('DB_HOST', 'localhost');
define('DB_PASSWORD', 'пароль');

Рекомендуем добавить в конец wp-config.php следующие строки, чтобы отменить жесткую привязку сайта к конкретному домену:

if(isset($_SERVER['HTTPS'])) {
$schema = 'https://';
}
else {
$schema = 'http://';
}
define('WP_HOME', $schema.$_SERVER['SERVER_NAME']);
define('WP_SITEURL', $schema.$_SERVER['SERVER_NAME']);

Image3

После сохранения файла проверьте работу сайта по техническому домену.

Замена вхождений домена

Если сайт работает некорректно, попробуйте выполнить замену вхождений, чтобы везде был указан технический домен. Для выполнения замены потребуется воспользоваться SSH-консолью. Для этого:

В панели управления выберите «Инструменты» → «SSH-консоль».

Image12

Консоль откроется в новой вкладке браузера. Теперь необходимо перейти в директорию нашего сайта. В примере на скриншоте это ~/MySite/public_html.

Чтобы перейти в директорию сайта, выполните команду:

cd ~/имя_папки_сайта/public_html

Image21

Теперь изменим вхождения домена. Для этого выполним команду:

wp search-replace старый_домен новый_домен

После выполнения команды вы увидите соответствующий вывод.

Image22

После этого сайт должен работать корректно.

Bitrix

Для настройки сайта на Bitrix необходимо указать реквизиты подключения к базе данных в двух файлах: /имя_сайта/public_html/bitrix/php_interface/dbconn.php и /имя_сайта/public_html/bitrix/.settings.php.

Сначала обновите данные для подключения к базе в файле /имя_сайта/public_html/bitrix/php_interface/dbconn.php. Строки, которые необходимо обновить, выглядят так:

$DBLogin  = "имя_БД";
$DBPassword  = "пароль";
$DBName  = "имя_БД";

Image2

Затем отредактируйте файл /имя_сайта/public_html/bitrix/.settings.php. Найдите следующие строки и обновите данные для подключения:

$DBLogin  = "имя_БД";
$DBPassword  = "пароль";
$DBName  = "имя_БД";

Image26

Проверьте работу сайта по техническому домену.

Иногда для корректного отображения сайта может потребоваться добавить технический домен в панели администратора. Для этого перейдите в админку сайта: технический_домен/bitrix.

В панели администратора откройте «Настройки» → «Настройки продукта» → «Сайты» → «Список сайтов» → «Сайты» и выберите ваш сайт. Если в полях «Доменное имя» или «URL сервера» указаны значения, обновите их, указав технический домен.

Image19

Сохраните настройки и проверьте работу сайта.

Drupal

Для настройки подключения к базе данных необходимо отредактировать файл /имя_сайта/public_html/sites/default/settings.php. Найдите следующие строки и укажите данные для подключения к базе:

'database' => 'имя_БД',
'login' => 'имя_БД',
'password' => 'пароль',

Image7

Проверьте работу сайта по техническому домену.

Joomla

Для настройки подключения к базе данных необходимо отредактировать файл configuration.php, расположенный в корневой директории сайта. Найдите подобные строки и отредактируйте их:

var $user = 'имя_БД';
var $db = 'имя_БД';
var $password = 'пароль';

Image18

Проверьте работу сайта по техническому домену. 

Иногда для корректной работы сайта может потребоваться изменить переменные $log_path и $tmp_path в файле configuration.php. Эти переменные содержат абсолютный путь к директориям сайта и выглядят следующим образом:

public $log_path = '/home/c/cb73619/joomla_st7iz/public_html/administrator/logs';
public $tmp_path = '/home/c/cb73619/joomla_st7iz/public_html/tmp';

Где:

  • c — первая буква имени вашего аккаунта;
  • cb73619 — имя вашего аккаунта;
  • joomla_st7iz — имя директории вашего сайта.

Измените пути в соответствии с вашей конфигурацией и укажите их в файле configuration.php.

Image23

MODX

Для настройки подключения к базе данных необходимо отредактировать файл config.inc.php. Он расположен по пути имя_сайта/public_html/core/config/config.inc.php. Строки, которые необходимо отредактировать, выглядят так:

$database_user = 'имя_БД';
$database_password = 'пароль';
$dbase = 'имя_БД';
$database_dsn = 'mysql:host=localhost;dbname=имя_БД;

Image28

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

/home/c/cb73619/modx_966n6/public_html/core/

Где:

  • c — первая буква имени вашего аккаунта;
  • cb73619 — имя вашего аккаунта;
  • modx_966n6 — имя директории вашего сайта.

Изменить пути необходимо в следующих файлах:

  • config.core.php
  • connectors/config.core.php
  • manager/config.core.php
  • core/config/config.inc.php

Вы можете сделать это вручную, но для удобства можно воспользоваться SSH-консолью. Для этого перейдите в раздел «Инструменты» → «SSH-консоль».

Image8

Консоль откроется в новой вкладке браузера. Теперь необходимо перейти в директорию вашего сайта. В примере на скриншоте — это ~/MySite/public_html.

Чтобы перейти в директорию сайта, выполните команду:

cd ~/имя_папки_сайта/public_html

Image21

Теперь узнайте полный путь до директории сайта, выполнив команду:

pwd

Image5

Узнайте путь, который сейчас указан в конфигурационных файлах сайта. Например, откройте файл config.core.php при помощи файлового менеджера. Вы увидите строку вида:

$modx_core_path= '/home/c/cb73619/modx_966n6/public_html/core/';

Путь, который нам необходим:

/home/c/cb73619/modx_966n6/public_html

Теперь вернитесь в SSH-консоль и выполните команды по очереди:

sed -i 's%старый_путь%новый_путь%g' ./config.core.php
sed -i 's%старый_путь%новый_путь%g' ./connectors/config.core.php
sed -i 's%старый_путь%новый_путь%g' ./manager/config.core.php
sed -i 's%старый_путь%новый_путь%g' ./core/config/config.inc.php

Пример:

sed -i 's%/home/c/cb73619/modx_966n6/public_html%/home/c/ct81221/MySite/public_html%g' ./config.core.php

После этого проверьте работу сайта.

OpenCart

Для настройки подключения к базе данных необходимо отредактировать два файла — config.php и ./admin/config.php.

Подключение к базе данных настраивается в строках следующего вида:

define('DB_USERNAME', 'имя_БД');
define('DB_PASSWORD', 'пароль');
define('DB_DATABASE', 'имя_БД');

Image30

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

В файле config.php найдите и измените строку:

// HTTP
define('HTTP_SERVER', 'http://cb73619-opencart-wsz4i.tw1.ru/');

А в файле ./admin/config.php — следующие строки:

// HTTP
define('HTTP_SERVER', 'http://cb73619-opencart-wsz4i.tw1.ru/admin/');
define('HTTP_CATALOG', 'http://cb73619-opencart-wsz4i.tw1.ru/');

Image9

Также необходимо обновить пути.

В файле config.php найдите подобную строку:

define('DIR_OPENCART', '/home/c/cb73619/opencart_wsz4i/public_html/');

Где:

  • c — первая буква имени вашего аккаунта;
  • cb73619 — имя вашего аккаунта;
  • opencart_wsz4i — имя директории вашего сайта.

Отредактируйте эту строку, указав актуальные данные. Ту же процедуру выполните для файла ./admin/config.php.

После этого проверьте работу сайта.

Перенос домена

После того, как вы убедились в корректной работе сайта по техническому домену, перенесите ваш домен по инструкции: Технический перенос домена в Timeweb.

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