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.
Після перемикання домену пройдіться за загальним чек-листом зі статті чеклист перевірки сайту після міграції.