Перенос через панель управления
По этой инструкции вы сможете перенести сайт со стороннего хостинга или с другого аккаунта Timeweb. Материал рассчитан на пользователей без опыта работы с терминалом. Если вас не пугает SSH — воспользуйтесь инструкцией по переносу через терминал.
Предварительная подготовка
Перед началом переноса сайта необходимо подготовить все данные, которые потребуются в процессе. Нам понадобятся данные для подключения к FTP и данные для авторизации в phpMyAdmin.
Доступ к FTP
В первую очередь потребуется FTP-доступ к серверу, с которого будет выполняться перенос.
Для работы с FTP вам понадобятся следующие данные:
- IP-адрес или хост сервера,
- Логин,
- Пароль.
Если перенос выполняется между аккаунтами Timeweb
Получить данные для подключения по FTP можно на странице «Дашборд» в панели управления.
Если перенос выполняется со стороннего хостинга
Информацию о получении данных для подключения к серверу по FTP можно найти в документации хостинга или узнать данные для подключения у поддержки. Мы собрали ссылки на инструкции некоторых популярных хостинг-провайдеров:
Если на отдающем хостинге используется панель управления, получить данные для подключения по FTP можно по этим инструкциям:
Доступ к phpMyAdmin
Помимо файлов сайта, также необходимо перенести базу данных. Для этого потребуется доступ к phpMyAdmin. Он используется для работы с базами данных и с его помощью мы создадим дамп базы данных.
Если перенос выполняется между аккаунтами Timeweb
Чтобы получить доступ к phpMyAdmin, перейдите в раздел «Базы данных» в панели управления. Включите переключатель «Полный доступ» — после этого станет доступна ссылка для входа в phpMyAdmin.
Если перенос выполняется со стороннего хостинга
Как авторизоваться в phpMyAdmin на стороннем хостинге вы можете узнать из документации хостинга или обратившись в поддержку. Собрали ссылки на инструкции некоторых провайдеров:
Если на отдающем хостинге используется панель управления, доступ к phpMyAdmin можно получить по инструкции:
Перенос файлов сайта
Перейдем к переносу файлов. Перед копированием файлов необходимо создать новый сайт. Это нужно для того, чтобы на сервере автоматически создалась директория сайта.
Создание сайта
- Откройте раздел «Сайты» → «Мои сайты».
- Нажмите кнопку «Создать сайт».
- Укажите название директории сайта. При необходимости добавьте комментарий.
- Нажмите на кнопку «Сохранить».
Привязка технического домена
При переносе сайта мы рекомендуем использовать технический домен. Технический домен — это бесплатный тестовый домен. Благодаря использованию технического домена вы сможете избежать простоя «боевого» сайта, так как он продолжит работать на старом хостинге до того момента, пока вы полностью не убедитесь в работоспособности перенесенного сайта.
Создать технический домен можно в разделе «Домены» → «Купить домен». Нажмите на меню выбора доменной зоны и укажите в поиске одну из доступных зон:
tw1.su
tw1.ru
twc1.net
webtm.ru
Выберите понравившуюся доменную зону, нажав на нее.
Придумайте доменное имя и нажмите на кнопку «Зарегистрировать».
На следующем экране можно сразу привязать домен к нужному сайту. Если выбран не тот сайт, нажмите на его имя и измените привязку.
Завершите регистрацию домена, нажав на кнопку «Зарегистрировать домен».
Работа с файловым менеджером
После создания сайта в разделе «Файловый менеджер» появится соответствующая директория. Файлы сайта должны находиться в директории /имя_сайта/public_html
. После создания сайта в этой директории находится заглушка. У большинства хостингов-провайдеров файлы сайта также находятся в public_html
, поэтому мы удалим текущую директорию и заменим ее копией с отдающего сервера.
Удаление заглушки:
- Перейдите в директорию вашего сайта.
- Щелкните правой кнопкой мыши по директории
public_html
. - Выберите «Удалить» и подтвердите удаление.
Для удобства работы откроем двухоконный режим файлового менеджера:
- В меню выберите «Вид».
- Поставьте галочку «Два окна».
Подключение к FTP исходного сервера
Теперь подключимся к серверу, с которого будем переносить файлы:
- В меню файлового менеджера нажмите «Подключение» → «FTP-соединение».
- В появившейся форме введите данные для подключения.
- Нажмите «Подключиться».
После успешного подключения в одной из вкладок файлового менеджера появятся файлы удаленного сервера. Определить, в каком окне отображаются файлы удаленного сервера, можно по значку FTP.
В нашем случае, слева открыта папка сайта, а в правом окне — настроено удаленное подключение. Теперь перейдем в директорию сайта на удаленном сервере. В нашем случае — директория wordpress_2phrs
. Перейдя в директорию, увидим, что в ней находится папка public_html
.
Копирование файлов
Скопируем public_html
в директорию нашего сайта. Для этого:
- Зажмите папку
public_html
левой кнопкой мыши. - Перенесите ее в левое окно, в директорию нашего сайта.
Файлы именно копируются, а не перемещаются, поэтому сайт останется работоспособным на старом сервере.
Дождитесь завершения копирования. Если после переноса файлы не отображаются в файловом менеджере, обновите страницу браузера.
Перенос базы данных
Теперь необходимо создать дамп базы данных. Для этого:
- Откройте phpMyAdmin на сервере, с которого выполняется перенос.
- Выберите нужную базу данных.
- Перейдите в раздел «Экспорт».
- Нажмите кнопку «Экспорт».
Если вы не знаете, какую базу данных использует ваш сайт, ее имя можно узнать в конфигурационных файлах 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
— это и есть дамп базы данных.
Создание базы данных на новом сервере
Перейдем к созданию новой базы данных, в которую мы импортируем ранее созданный дамп. Для этого:
- Откройте панель управления и перейдите в раздел «Базы данных».
- Нажмите кнопку «Создание новой базы данных».
- В открывшемся окне укажите имя базы данных и пароль.
- Нажмите «Создать».
Импорт дампа базы данных
Теперь загрузим ранее созданный дамп в новую базу данных:
-
В разделе «Базы данных» включите «Полный доступ».
-
Нажмите кнопку phpMyAdmin.
-
В открывшемся phpMyAdmin выберите созданную базу данных.
-
Перейдите в раздел «Импорт».
-
Выберите ранее скачанный
.sql
-файл. -
Пролистайте страницу вниз и нажмите кнопку «Импорт».
После завершения импорта база данных будет загружена и готова к использованию.
Настройка конфигурационных файлов CMS
После того как файлы сайта размещены, а база данных перенесена, необходимо настроить конфигурационные файлы, чтобы сайт мог взаимодействовать с базой данных. Пока этого не сделано, сайт и база данных не знают друг о друге.
Все изменения можно выполнить через Файловый менеджер. Для редактирования файла:
- Перейдите в нужную директорию.
- Кликните по файлу, который необходимо изменить.
- В открывшемся редакторе внесите изменения и нажмите кнопку «Сохранить».
Для каждой 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']);
После сохранения файла проверьте работу сайта по техническому домену.
Замена вхождений домена
Если сайт работает некорректно, попробуйте выполнить замену вхождений, чтобы везде был указан технический домен. Для выполнения замены потребуется воспользоваться SSH-консолью. Для этого:
В панели управления выберите «Инструменты» → «SSH-консоль».
Консоль откроется в новой вкладке браузера. Теперь необходимо перейти в директорию нашего сайта. В примере на скриншоте это ~/MySite/public_html
.
Чтобы перейти в директорию сайта, выполните команду:
cd ~/имя_папки_сайта/public_html
Теперь изменим вхождения домена. Для этого выполним команду:
wp search-replace старый_домен новый_домен
После выполнения команды вы увидите соответствующий вывод.
После этого сайт должен работать корректно.
Bitrix
Для настройки сайта на Bitrix необходимо указать реквизиты подключения к базе данных в двух файлах: /имя_сайта/public_html/bitrix/php_interface/dbconn.php
и /имя_сайта/public_html/bitrix/.settings.php
.
Сначала обновите данные для подключения к базе в файле /имя_сайта/public_html/bitrix/php_interface/dbconn.php
. Строки, которые необходимо обновить, выглядят так:
$DBLogin = "имя_БД";
$DBPassword = "пароль";
$DBName = "имя_БД";
Затем отредактируйте файл /имя_сайта/public_html/bitrix/.settings.php
. Найдите следующие строки и обновите данные для подключения:
$DBLogin = "имя_БД";
$DBPassword = "пароль";
$DBName = "имя_БД";
Проверьте работу сайта по техническому домену.
Иногда для корректного отображения сайта может потребоваться добавить технический домен в панели администратора. Для этого перейдите в админку сайта: технический_домен/bitrix
.
В панели администратора откройте «Настройки» → «Настройки продукта» → «Сайты» → «Список сайтов» → «Сайты» и выберите ваш сайт. Если в полях «Доменное имя» или «URL сервера» указаны значения, обновите их, указав технический домен.
Сохраните настройки и проверьте работу сайта.
Drupal
Для настройки подключения к базе данных необходимо отредактировать файл /имя_сайта/public_html/sites/default/settings.php
. Найдите следующие строки и укажите данные для подключения к базе:
'database' => 'имя_БД',
'login' => 'имя_БД',
'password' => 'пароль',
Проверьте работу сайта по техническому домену.
Joomla
Для настройки подключения к базе данных необходимо отредактировать файл configuration.php
, расположенный в корневой директории сайта. Найдите подобные строки и отредактируйте их:
var $user = 'имя_БД';
var $db = 'имя_БД';
var $password = 'пароль';
Проверьте работу сайта по техническому домену.
Иногда для корректной работы сайта может потребоваться изменить переменные $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
.
MODX
Для настройки подключения к базе данных необходимо отредактировать файл config.inc.php
. Он расположен по пути имя_сайта/public_html/core/config/config.inc.php
. Строки, которые необходимо отредактировать, выглядят так:
$database_user = 'имя_БД';
$database_password = 'пароль';
$dbase = 'имя_БД';
$database_dsn = 'mysql:host=localhost;dbname=имя_БД;
Помимо данных для подключения к базе, необходимо также изменить пути к файлам. Пример пути:
/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-консоль».
Консоль откроется в новой вкладке браузера. Теперь необходимо перейти в директорию вашего сайта. В примере на скриншоте — это ~/MySite/public_html
.
Чтобы перейти в директорию сайта, выполните команду:
cd ~/имя_папки_сайта/public_html
Теперь узнайте полный путь до директории сайта, выполнив команду:
pwd
Узнайте путь, который сейчас указан в конфигурационных файлах сайта. Например, откройте файл 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', 'имя_БД');
Помимо реквизитов для подключения к базе, необходимо указать новый домен.
В файле 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/');
Также необходимо обновить пути.
В файле config.php
найдите подобную строку:
define('DIR_OPENCART', '/home/c/cb73619/opencart_wsz4i/public_html/');
Где:
c
— первая буква имени вашего аккаунта;cb73619
— имя вашего аккаунта;opencart_wsz4i
— имя директории вашего сайта.
Отредактируйте эту строку, указав актуальные данные. Ту же процедуру выполните для файла ./admin/config.php
.
После этого проверьте работу сайта.
Перенос домена
После того, как вы убедились в корректной работе сайта по техническому домену, перенесите ваш домен по инструкции: Технический перенос домена в Timeweb.
Если вы переносили сайт на Wordpress и выполняли замену вхождений, не забудьте снова выполнить эту операцию, чтобы прописать в базе фактический домен сайта.