Перенос сайта на Битрикс — задача которую рано или поздно решает каждый разработчик. Рассмотрим полный процесс без потери данных и с минимальным downtime.
Что нужно перенести
- Файлы сайта (публичная часть + /bitrix/)
- База данных MySQL
- Файл настроек /bitrix/.settings.php
- Загруженные файлы из /upload/
Шаг 1: Дамп базы данных
mysqldump -u USER -p DB_NAME | gzip > backup.sql.gz
Шаг 2: Архивирование файлов
tar -czf site_files.tar.gz /var/www/site/
--exclude=*/bitrix/cache/*
--exclude=*/bitrix/managed_cache/*
Кэш исключаем — он пересоздаётся автоматически.
Шаг 3: Передача на новый сервер
rsync -avz --progress site_files.tar.gz user@new-server:/tmp/
rsync -avz --progress backup.sql.gz user@new-server:/tmp/
Шаг 4: Развёртывание
tar -xzf site_files.tar.gz -C /var/www/
zcat backup.sql.gz | mysql -u NEW_USER -p NEW_DB
Шаг 5: Обновить .settings.php
Измените параметры подключения к БД в /bitrix/.settings.php — укажите новый хост, логин и пароль базы данных.
Шаг 6: Очистка кэша
rm -rf /var/www/site/bitrix/cache/*
rm -rf /var/www/site/bitrix/managed_cache/*
Откройте сайт по IP нового сервера через /etc/hosts и убедитесь что всё работает перед переносом DNS.
Перенос DNS с минимальным downtime
Снизьте TTL записей до 300 секунд за 24 часа до переноса. После успешной проверки смените A-запись на новый IP — через 5 минут большинство пользователей попадут на новый сервер.
