Настройка обновлений Битрикс24 On-Premise

Наша компания занимается разработкой, поддержкой и обслуживанием решений на Битрикс и Битрикс24 любой сложности. От простых одностраничных сайтов до сложных интернет магазинов, CRM систем с интеграцией 1С и телефонии. Опыт разработчиков подтвержден сертификатами от вендора.
Предлагаемые услуги
Показано 1 из 1 услугВсе 1626 услуг
Настройка обновлений Битрикс24 On-Premise
Простая
~1 рабочий день
Часто задаваемые вопросы
Наши компетенции:
Этапы разработки
Последние работы
  • image_website-b2b-advance_0.png
    Разработка сайта компании B2B ADVANCE
    1177
  • image_bitrix-bitrix-24-1c_fixper_448_0.png
    Разработка веб-сайта для компании ФИКСПЕР
    811
  • image_bitrix-bitrix-24-1c_development_of_an_online_appointment_booking_widget_for_a_medical_center_594_0.webp
    Разработка на базе Битрикс, Битрикс24, 1С для компании Development of an Online Appointment Booking Widget for a Medical Center
    564
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    Разработка на базе 1С Предприятие для компании МИРСАНБЕЛ
    747
  • image_crm_dolbimby_434_0.webp
    Разработка сайта на CRM Битрикс24 для компании DOLBIMBY
    655
  • image_crm_technotorgcomplex_453_0.webp
    Разработка на базе Битрикс24 для компании ТЕХНОТОРГКОМПЛЕКС
    976

Настройка обновлений Битрикс24 On-Premise

Обновление коробочного Битрикс24 — не кнопка «Обновить» и готово. Без подготовки обновление может сломать кастомные доработки, нарушить работу модулей или занять несколько часов на production-сервере. Процесс нужно выстроить как процедуру.

Как работает система обновлений

Битрикс24 On-Premise получает обновления через «Маркетплейс» и встроенный updater. Компонент системы обновлений — /bitrix/updates/. При запуске проверяет доступные патчи на сервере обновлений dev.1c-bitrix.ru, скачивает пакеты и применяет изменения к файлам и БД.

Обновления двух типов:

  • Patch — точечное исправление, затрагивает отдельные файлы
  • Release — мажорное обновление с изменениями структуры БД (b_* таблицы)

Релизы опаснее: они содержат миграции БД через \Bitrix\Main\Application::getConnection()->queryExecute(). Если кастомный код использует нестандартные поля в системных таблицах, миграция может сломать данные.

Настройка автообновлений

В /bitrix/admin/update_system_partner.php можно включить автоматическое получение и применение обновлений по расписанию. Это удобно, но рискованно для production без тестирования.

Разумная стратегия: автообновления включаются только для патчей безопасности (SECURITY = Y). Мажорные обновления — только вручную после тестирования на staging.

Настройка через агент в b_agent:

// Агент проверки обновлений запускается каждые 24 часа
CAgent::AddAgent(
    "CUpdateClient::CheckUpdates();",
    "main",
    "N",
    86400,
    "",
    "Y"
);

Процедура обновления на production

Шаг 1: Резервная копия. Перед любым обновлением — бэкап файлов и БД. Встроенный модуль резервного копирования (/bitrix/admin/backup.php) или mysqldump + tar:

mysqldump -u bitrix -p bitrix24_db > /backup/bitrix24_$(date +%Y%m%d_%H%M).sql
tar czf /backup/bitrix24_files_$(date +%Y%m%d_%H%M).tar.gz /var/www/html --exclude=/var/www/html/upload

Шаг 2: Тест на staging. Если есть staging-сервер (а он должен быть) — применяете обновление там, прогоняете функциональное тестирование. Проверяете:

  • Кастомные компоненты в /local/components/
  • Кастомные обработчики в /local/php_interface/init.php
  • Модули из /local/modules/
  • Интеграции с внешними системами (1С, CRM)

Шаг 3: Maintenance mode. Перед обновлением на production — режим технического обслуживания. В Битриксе это реализуется через /bitrix/.maintenance.php:

<?php
// /bitrix/.maintenance.php
header('HTTP/1.1 503 Service Unavailable');
header('Retry-After: 3600');
include '/path/to/maintenance_page.html';
exit;

И в nginx перехватываете все запросы и показываете страницу обслуживания.

Шаг 4: Применение обновления. Через /bitrix/admin/update_system.php или через консольный обработчик обновлений (в BitrixVM есть bitrix-env).

Шаг 5: Проверка после обновления. Список критических страниц: главная, каталог, карточка товара, корзина, оформление заказа, личный кабинет, административная панель. Проверяете логи php-fpm и nginx на новые ошибки.

Обновление кастомных модулей из Маркетплейса

Модули из Маркетплейса обновляются отдельно от ядра. В /bitrix/admin/partner_modules.php список установленных модулей с доступными обновлениями. Перед обновлением стороннего модуля — читайте changelog: некоторые модули при обновлении сбрасывают настройки.

Кастомные модули в /local/modules/ вне зоны обновлений Маркетплейса — обновляете вручную или через свой CI/CD.

Контроль версий кастомного кода

Основная проблема при обновлении: разработчики часто модифицируют файлы ядра Битрикс (/bitrix/modules/) вместо использования /local/. При обновлении ядра такие изменения перезаписываются.

Проверьте перед обновлением: нет ли изменённых файлов в /bitrix/ (не в /local/). Через Git это просто: если /bitrix/ под версионным контролем, git diff покажет изменения. Если нет — сравниваете хеши файлов с эталонным дистрибутивом.

Правильная практика: всё кастомное — только в /local/. Тогда обновление ядра безопасно.