Документация InstantCMS

для администраторов и разработчиков

Инструменты пользователя

Инструменты сайта


manual:settings:relocation

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

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

Формирование архива переносимого сайта

В первую очередь необходимо скопировать со старого сервера файлы движка. Если вы это будете делать посредством FTP, то режим соединения выберите двоичный(бинарный). Как только все файлы будут скопированы, необходимо сделать дамп базы данных. Это можно сделать как через phpmyadmin, так и при помощи специальных инструментов, например Sypex Dumper. Если база данных небольшая, то вполне можно обойтись и средствами phpmyadmin. Как только файлы сайта и дамп базы данных будут готовы, можно приступать к копированию на новый сервер.

Перенос на новый сервер

Соединяемся по FTP и копируем файлы самого движка. Также при копировании стоит выбирать двоичный(бинарный) режим соединения. После копирования необходимо проверить корректность прав доступа, какие они должны быть описано здесь. Обратите внимание! На некоторых операционных системах файлы с точкой в начале (например .htaccess) могут быть скрытыми. При копировании включите показ скрытых файлов.

Если на новом сервере пустая база данных не создана, то необходимо её создать (не забываем, что сравнение для БД должно быть utf-8_general_ci). Для упрощения можно сделать ей название такое же, как и на старом сервере. Также одинаковыми со старым сервером можно сделать имя пользователя БД и его пароль. Как только БД создана, необходимо в неё импортировать дамп, который вы создали со старого сервера. Импортировать можно также при помощи phpmyadmin или других инструментов для работы с базой данных MySQL.

Если реквизиты для БД на новом сервере полностью совпадают, то сайт сразу начнёт работать. Если не совпадают, то необходимо отредактировать файл /system/config/config.php. Откройте его и найдите строки:

'db_host' => 'тут будет хост базы, обычно localhost',
'db_base' => 'тут будет пароль к базе',
'db_user' => 'тут будет имя пользователя базы',

и замените на новые реквизиты от нового сервера.

Кроме этого, начиная с версии InstantCMS 2.12.0, когда путь к директории хранения сессий указывается в админке, вероятней всего вам потребуется его изменить согласно нового сервера. Всё также в файле /system/config/config.php необходимо это изменить в строчке:

'session_save_path' => 'тут указать полный путь или не указывать ничего',

Сохраните файл. Сайт перенесён и работает.

Возможные проблемы

Не показываются виджеты нигде, кроме главной

Зайдите в phpmyadmin, в вашу базу сайта. Найдите таблицу cms_widgets_pages. В ней найдите запись, где ячейка title_const указана в значение LANG_WP_ALL_PAGES. Поставьте этой записи ячейку id в ноль.

Смотрите также

Если у вас сменился домен сайта или вы решили перенести сайт в поддиректорию - это всё тоже быстро решается. Нам опять понадобится файл конфигурации /system/config/config.php.

Если сменился домен, то все упоминания старого домена смените на новый.

Если вы решили перенести сайт из корневой директории в поддиректорию, например с названием sub_dir, то найдите строки

'root'	      => '/',
'host'	      => 'http://site.ru',
'upload_root' => '/upload/',
'upload_host' => 'http://site.ru/upload',
'cache_root'  => '/cache/',

и приведите их к виду

'root'	      => '/sub_dir/',
'host'	      => 'http://site.ru/sub_dir',
'upload_root' => '/sub_dir/upload/',
'upload_host' => 'http://site.ru/sub_dir/upload',
'cache_root'  => '/sub_dir/cache/',

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

Также не забудьте настроить новую задачу для планировщика.


Назад в Настройки сайта

manual/settings/relocation.txt · Последнее изменение: 03.04.2019 16:33 — fuze