1С-Битрикс переносят иначе, чем большинство CMS: у системы есть встроенный модуль резервного копирования, который упаковывает файлы и базу в один архив. Это надёжнее ручного копирования, потому что модуль сам исключает временные файлы и кеш.
Чем перенос Битрикс отличается от других CMS
Битрикс хранит настройки подключения к базе в файле bitrix/php_interface/dbconn.php, а не в едином конфиге, и активно использует модуль main для кеширования на диске в каталоге bitrix/cache. Этот каталог переносить не надо — он пересоздаётся автоматически и может весить несколько гигабайт.
Подготовка нового сервера
Проверьте, что на новом сервере установлены версии из таблицы — Битрикс чувствителен к несовпадению версий PHP и расширений:
| Компонент | Минимум | Рекомендуется |
|---|---|---|
| PHP | 8.1 | 8.3 |
| MySQL | 5.7 | 8.0 |
| Модуль mysqli | обязателен | обязателен |
| Свободное место | x2 от размера сайта | x3 от размера сайта |
Свободное место нужно с запасом, потому что архив резервной копии временно займёт ещё столько же места, сколько занимает сам сайт.
Создание резервной копии через модуль BackUp
В панели управления сайтом откройте раздел «Настройки» → «Резервное копирование» → «Создание резервной копии» и выберите вариант с разбивкой на тома по 100–500 МБ, если сайт больше 2 ГБ — так проще закачать архив по FTP. Если доступ к серверу есть по SSH, быстрее выполнить резервное копирование через консоль:
php bitrix/modules/main/tools/backup.php
Готовый архив (или набор томов .tar.gz) скачайте на локальный компьютер или сразу передайте на новый сервер через rsync, как описано в статье перенос файлов сайта.
Восстановление на новом сервере
Загрузите архив в каталог /upload/backup/ сайта на новом сервере через веб-интерфейс «Восстановление данных» в административной панели Битрикс. Мастер восстановления сам распакует файлы и предложит создать базу данных — укажите новые логин и пароль от MySQL, которые вы завели заранее на новом сервере.
Если восстанавливаете через консоль без веб-мастера, база импортируется командой:
mysql -u bitrix_user -p bitrix_db < backup_db.sql
Общий алгоритм экспорта и импорта MySQL, включая работу с большими дампами, — в статье перенос базы данных MySQL.
Настройка dbconn.php и проверка лицензии
После восстановления откройте bitrix/php_interface/dbconn.php и проверьте, что константы $DBHost, $DBName, $DBLogin и $DBPassword указывают на новый сервер. Затем очистите кеш через административную панель: «Настройки» → «Автокеширование» → «Очистить кеш», или удалите содержимое каталога bitrix/cache вручную.
Лицензия Битрикс привязана к домену, поэтому при смене IP-адреса без смены домена переактивация не требуется. Если меняется и домен, зайдите в «Настройки продукта» → «Лицензионные ключи» и обновите привязку.
Переключение домена без простоя
Перед переключением A-записи откройте сайт на новом сервере по IP с подменой хоста в локальном файле /etc/hosts и убедитесь, что работает каталог, корзина и админка /bitrix/admin/. Снизьте TTL записи до 300 секунд за сутки до переключения, чтобы изменения быстро разошлись по DNS-серверам. Подробная схема — в статье смена хостинга без простоя.
Чек-лист переноса Битрикс
- Версии PHP и MySQL на новом сервере соответствуют требованиям.
- Резервная копия создана модулем BackUp, а не вручную.
- Каталог bitrix/cache исключён из переноса.
- Файл dbconn.php указывает на новую базу данных.
- Кеш очищен через админку после восстановления.
- Сайт проверен по IP перед переключением DNS.
После переключения домена пройдитесь по общему чек-листу из статьи чеклист проверки сайта после миграции.