Перенос Битрикс сайта на другой хостинг
Далее следует небольшой чек-лист для переноса сайта на Битрикс с одного сервера на другой.
Обозначим сервер, на который мы переносим - целевой.
Сервер, на котором сейчас сайт - текущий.
Основной план
Основной план затрагивает большинство сайтов, на которых не будет изменений за время переноса DNS.
- На целевом сервере создаём необходимый каталог для сайта
Очень неплохой идеей будет пройтись по серверу скриптом bitrix_server_test.php - На целевом сервере создаём пользователя и базу данных для сайта
- Пингуем сайт. Сверяем с IP текущего сервера
- На сайте отключаем композит, CDN, сбрасываем кэш
- На сайте отключаем настройки безопасности, связанные с IP и папкой сайта
- На текущем сервере делаем дамп базы данных, кладём в корень сайта
- Заворачиваем сайт на текущем сервере в архив.
Маска исключения: /bitrix/cache/* /upload/resize_cache/* /upload/tmp/* /bitrix/tmp/* /bitrix/managed_cache/* /bitrix/stack_cache/*.
Готовая схема для tar.gz (.tgz) при нахождении в корневой папке сайта:
tar -cvzf <путь до бэкапа> ./ --exclude=./bitrix/tmp/* --exclude=./upload/tmp/* --exclude=./bitrix/*cache*/* --exclude=./upload/*cache*/* --exclude=./bitrix/backup/* - Переносим архив с сайтом на целевой сервер
- Разворачиваем в каталоге для сайта (различается в зависимости от хостинга)
- Переписываем DNS-настройки c IP текущего сервера на IP целевого, в частности это должна быть как минимум изменённая А-запись.
- Меняем права и владельца на приемлемые сервером.
Права для файлов: 644 (чтение и запись для владельца и чтение для остальных), права для папок: 755 (чтение, запись, запуск для владельца, чтение и запуск для остальных) - Проверяем настройки PHP: обязательно PHP 5.3+, short_open_tag = On
- Меняем файлы на целевом сервере /bitrix/php_interface/dbconn.php и /bitrix/.settings.php
В них необходимо подставить правильные данные по базе данных.
В .settings.php находим и меняем строки:
'database' => 'НАЗВАНИЕБАЗЫ',
'login' => 'ИМЯПОЛЬЗОВАТЕЛЯБД',
'password' => 'ПАРОЛЬБД'
В dbconn.php меняем следующие строки:
$DBLogin = "ИМЯПОЛЬЗОВАТЕЛЯБД";
$DBPassword = "ПАРОЛЬБД";
$DBName = "НАЗВАНИЕБАЗЫ"; - Меняем хост вручную, чтобы подключиться напрямую по IP.
Для линукс:
Открываем /etc/hosts под суперпользователем, добавляем строку
123.234.321.0 ваш.домен, где 123.234.321.0 - это IP-адрес целевого сервера - Заходим по домену в админку
- Включаем необходимую безопасность, изменив настройки на IP целевого сервера
- Включаем правильную корневую папку, если необходимо, в настройках "Сайты"
- Подключаем CDN\композит\кэш (если отключали).
- Просматриваем файл .htaccess на наличие нерабочих функций
- Проверяем 404 на сайте
Дополнительный план
Дополнительный план работает в том случае, если информация может измениться за то время, за которое вы переносите сайт. (терминология прежняя)
После того, как сайт отдаётся с IP целевого сервера без записи в /etc/hosts:
- Делаем повторный дамп базы данных на сайте текущем
- Смотрим на изменения в сайте. Чаще всего это папка upload
- Архивируем файлы, которые были изменены с даты предыдущего бэкапа (можно воспользоваться tar --listed-incremental=file)
- Копируем дополнительный бэкап и дамп БД на целевой сервер
- Заливаем БД, разворачиваем дополнительный бэкап в папку с сайтом.
- Меняем права и пользователя (по необходимости)
Оставить комментарий
Комментарии (1)