К статье
Практический материал

Администрирование · 12 мин

1С-Битрикс: как работает программа и из чего она состоит

Как устроен и работает 1С-Битрикс: архитектура, модули, инфоблоки, шаблоны, интеграция с 1С. Практическое руководство по настройке и администрированию.

«1С-Битрикс» — это не одна программа, а семейство продуктов на общей платформе: «Управление сайтом» (CMS для корпоративных сайтов и интернет-магазинов) и «Корпоративный портал» (внутренняя система для совместной работы, документооборота и CRM). Оба продукта построены на одном ядре, поэтому принципы работы у них одинаковые: есть база данных, ядро с модулями, административный раздел и публичная часть, которую видят пользователи.

Понимание того, как устроен Битрикс, важно для любого специалиста, который работает в экосистеме 1С: обмен данными с «1С:Управление торговлей», выгрузка каталога, синхронизация заказов и счетов — всё это происходит через механизмы Битрикса. Если знать, где хранятся товары, как формируются страницы и какие модули за что отвечают, настройка интеграции перестаёт быть «чёрным ящиком».

Ниже разберём архитектуру системы, ключевые сущности (инфоблоки, компоненты, шаблоны), порядок типовых операций в административном разделе, механизм обмена с 1С и типичные ошибки, которые приводят к потере данных или падению сайта.

Из чего состоит система: ядро, база данных и файлы

Битрикс работает на связке веб-сервер (Apache или Nginx), интерпретатор PHP и СУБД — чаще всего MySQL/MariaDB. При обращении к странице веб-сервер передаёт запрос PHP, ядро Битрикса подключается к базе, определяет, какой раздел запрошен, подключает нужные модули и компоненты, собирает HTML по шаблону и отдаёт результат пользователю. Чтобы снизить нагрузку, готовые страницы и результаты запросов складываются в кеш.

Файловая структура установки делится на несколько зон. Папка /bitrix/ содержит ядро, модули и административный раздел — её содержимое обновляется системой обновлений и вручную менять его нельзя. Папка /local/ предназначена для пользовательских доработок: своих шаблонов, компонентов и PHP-кода — она не затирается при обновлениях. Публичные страницы и разделы сайта лежат в корне и в папках разделов.

Настройки подключения к базе хранятся в файле .settings.php, устаревший вариант — dbconn.php. Там же задаются параметры кеширования и обработчики ошибок. Потеря или случайное изменение этих файлов делает сайт неработоспособным, поэтому перед любыми правками в файловой структуре делается резервная копия.

Модули: как расширяется функциональность

Ядро само по себе даёт минимум: управление пользователями, структурой сайта и файлами. Вся прикладная функциональность реализована модулями, которые устанавливаются и обновляются отдельно. Например, модуль «Информационные блоки» отвечает за хранение контента, «Интернет-магазин» — за корзину, заказы, оплату и доставку, «CRM» — за лиды, сделки и контакты, «Обмен с сайтами» — за интеграцию с 1С.

Посмотреть и настроить модули можно в административном разделе: «Настройки → Настройки продукта → Модули». Там же задаются параметры каждого модуля: валюты, типы цен, права доступа, ограничения на загрузку файлов. Отключая неиспользуемые модули, вы уменьшаете нагрузку и поверхность возможных ошибок, но удалять модуль нужно осторожно — вместе с ним могут быть удалены его данные.

Права доступа в Битриксе двухуровневые: группы пользователей получают роли на уровне модуля (например, «просмотр», «редактирование»), а внутри инфоблоков и разделов права уточняются отдельно. Типовая ошибка — выдать контент-менеджеру полный административный доступ «чтобы работало»: такой пользователь может случайно изменить системные настройки или удалить модуль.

Инфоблоки и структура контента

Инфоблок — центральная сущность Битрикса. Каталог товаров, новости, статьи, вакансии, справочники производителей — всё это инфоблоки разных типов. У каждого инфоблока есть разделы (иерархия категорий) и элементы (записи), а также настраиваемые свойства: строки, числа, списки, привязки к другим элементам, файлы, HTML-текст.

Создание инфоблока выполняется в разделе «Контент → Инфоблоки → Типы инфоблоков». Порядок такой: создаётся тип (например, «Каталог»), внутри него — инфоблок, затем на вкладке «Свойства» добавляются поля. Для торгового каталога инфоблок дополнительно помечается как торговый каталог, и к нему привязывается инфоблок торговых предложений (SKU) — это позволяет хранить варианты товара: размеры, цвета, комплектации.

Проверить корректность структуры просто: после создания инфоблока добавьте тестовый элемент, заполните свойства и убедитесь, что он отображается в публичной части через соответствующий компонент. Если элемент создан, но на сайте не виден, чаще всего причина в снятом флаге «Активность», в правах доступа группы «все пользователи» или в устаревшем кеше.

Создание инфоблока каталога
  1. 1
    Откройте «Контент → Инфоблоки → Типы инфоблоков» и создайте тип «Каталог», если его нет
  2. 2
    Добавьте инфоблок, укажите символьный код и настройте ЧПУ-адреса разделов и элементов
  3. 3
    На вкладке «Свойства» создайте нужные поля: артикул, бренд, изображения
  4. 4
    Отметьте инфоблок как торговый каталог в настройках модуля «Торговый каталог»
  5. 5
    Добавьте тестовый элемент и проверьте его отображение в публичной части
  6. 6
    Сбросьте кеш и убедитесь, что страница открывается по заданному ЧПУ-адресу

Компоненты и шаблоны: как формируются страницы

Публичная страница в Битриксе собирается из трёх слоёв. Шаблон сайта задаёт общий каркас: шапку, подвал, подключение стилей и скриптов. Внутри страницы размещаются компоненты — готовые блоки логики: «каталог», «корзина», «форма обратной связи», «список новостей». У каждого компонента есть свой шаблон вывода, который определяет HTML-разметку конкретного блока.

Компоненты бывают простые (один блок) и комплексные (целый раздел: например, «Каталог» сам строит страницы разделов, карточек товаров и фильтра по заданным ЧПУ-правилам). Параметры компонента настраиваются в визуальном редакторе или прямо в коде страницы: источник данных (инфоблок), количество элементов, поля для вывода, правила кеширования.

Кастомизация выполняется копированием шаблона компонента в папку шаблона сайта или в /local/templates/ — тогда правки сохранятся при обновлениях. Прямое редактирование шаблона внутри папки компонента в ядре — частая ошибка новичков: после очередного обновления все изменения исчезают.

Если страница «не видит» изменения после правки шаблона, в первую очередь сбросьте кеш: «Настройки → Настройки продукта → Автокеширование» или кнопка очистки кеша на панели управления. Большинство случаев «правка не применилась» — это закешированная версия страницы.
ПЗ
Практическое замечание

Обмен данными с 1С: как работает интеграция

Связка «1С:Управление торговлей» (или «Комплексная автоматизация», ERP) с сайтом на Битриксе — типовой сценарий. Обмен работает по протоколу CommerceML: 1С формирует XML-файлы с каталогом, ценами и остатками и передаёт их на сайт по HTTP, сайт распаковывает данные и записывает их в инфоблоки. В обратную сторону с сайта в 1С передаются заказы с данными покупателей.

Настройка на стороне Битрикса выполняется в «Магазин → Настройки → Интеграция с 1С» (в старших редакциях): задаются инфоблоки для загрузки товаров и предложений, параметры обработки заказов, права группы пользователей, от имени которой работает обмен. На стороне 1С настраивается узел обмена с сайтом: адрес скрипта обмена, логин и пароль пользователя, расписание выгрузки.

Обмен может выполняться вручную, по расписанию или в режиме реального времени. При больших каталогах полная выгрузка занимает заметное время и нагружает сервер, поэтому применяется выгрузка только изменений: 1С передаёт лишь те товары и цены, которые изменились с прошлого сеанса. Если обмен «зависает», проверяйте лимиты PHP (время выполнения скрипта, память), размер временных файлов и логи обмена на стороне 1С.

Контрольные точки

Как проверить результат обмена

Товары в инфоблоке
Норма

Количество элементов совпадает с выгруженным из 1С, цены и остатки актуальны

Тревожный признак

Элементы дублируются или цены не обновились — проверьте настройки соответствия полей

Заказы в 1С
Норма

Заказ с сайта появился в 1С с корректным контрагентом и составом

Тревожный признак

Заказ не пришёл — проверьте статусы заказов, участвующие в обмене, и права пользователя обмена

Лог обмена
Норма

Сеанс завершился без ошибок, файлы выгрузки удалены из временной папки

Тревожный признак

Ошибки авторизации или таймауты — проверьте логин, пароль и лимиты сервера

Производительность, кеш и обновления

Скорость работы Битрикса определяется тремя факторами: настройками кеширования, качеством хостинга и объёмом доработок. Встроенный монитор производительности («Настройки → Производительность → Панель производительности») показывает, какие страницы и запросы к базе тормозят систему. Типовые меры: включить автокеширование компонентов, настроить composite-кеш для быстрой отдачи страниц анонимным посетителям, перенести хранение сессий и кеша в memcached или аналогичное хранилище.

Обновления устанавливаются через «Настройки → Обновление платформы» при активной лицензии. Перед обновлением обязательно создаётся резервная копия файлов и базы — встроенный механизм резервного копирования позволяет сделать это штатно. Обновления безопасности выходят регулярно, и откладывать их надолго небезопасно: устаревшие версии содержат известные уязвимости.

Резервные копии храните не только на том же сервере, но и во внешнем хранилище. Проверяйте восстановление копии хотя бы на тестовом окружении: архив, который невозможно развернуть, не является резервной копией.

Типичные ошибки
01
Правка файлов ядра в /bitrix/ — изменения теряются при первом же обновлении, а система может перестать обновляться корректно
02
Работа без резервной копии перед обновлением или настройкой обмена — при сбое данные каталога и заказов восстановить не из чего
03
Полная выгрузка каталога в рабочие часы — сайт тормозит, посетители уходят; настройте выгрузку изменений и ночное расписание
04
Выдача прав администратора контент-менеджерам — случайное изменение системных настроек или удаление модуля
05
Игнорирование сброса кеша после правок — создаётся ложное впечатление, что изменения не работают

Как выбрать редакцию и сценарий внедрения

Редакции «Управления сайтом» различаются набором модулей: младшие подходят для сайтов-визиток и блогов, старшие («Бизнес», «Энтерпрайз») включают интернет-магазин, обмен с 1С, CRM и масштабирование. Если планируется торговля с синхронизацией с учётной системой, редакция без модуля интернет-магазина не подойдёт — апгрейд возможен, но дешевле сразу выбрать нужный уровень.

Для внутренних задач компании — документооборот, задачи, CRM, календари — предназначен «Корпоративный портал», в том числе облачный вариант Битрикс24. Облако не требует своего сервера, но ограничивает глубокие доработки; коробочная версия даёт полный доступ к коду ценой необходимости администрирования.

Сравнение вариантов развёртывания

Коробочная версия на своём сервере

Полный контроль, любые доработки, прямая интеграция с 1С; требует системного администратора и регулярного обслуживания

Хостинг, оптимизированный под Битрикс

Быстрый старт без настройки сервера; ограничения по ресурсам и меньше свободы в тонкой настройке

Облачный Битрикс24

Не требует инфраструктуры, обновления автоматические; доработки ограничены приложениями и вебхуками, тонкая интеграция с локальной 1С сложнее

Итог

Что важно запомнить

Битрикс — модульная платформа: ядро, база данных, инфоблоки для контента, компоненты и шаблоны для вывода. Доработки — только в /local/, обновления — только после резервной копии, обмен с 1С — через штатный механизм CommerceML с контролем логов. Этих правил достаточно, чтобы система работала стабильно.

Частые вопросы

Чем «1С-Битрикс: Управление сайтом» отличается от Битрикс24?

«Управление сайтом» — CMS для создания внешних сайтов и интернет-магазинов, устанавливается на хостинг или сервер. Битрикс24 — сервис для внутренней работы компании: CRM, задачи, телефония, документы; доступен в облаке и в коробке. Продукты разные, но построены на общей платформе и могут интегрироваться между собой.

Можно ли настроить обмен с 1С без программиста?

Базовый обмен каталогом и заказами настраивается штатными средствами через типовые обработки в 1С и настройки интеграции на сайте — без написания кода. Программист понадобится, если структура данных нестандартная: особые свойства товаров, нестандартные статусы заказов, несколько складов с разной логикой остатков.

Что делать, если после обновления сайт перестал работать?

Восстановите файлы и базу из резервной копии, сделанной перед обновлением. Затем повторите обновление на тестовой копии сайта и изучите логи ошибок: чаще всего причина в несовместимости кастомных шаблонов или сторонних модулей с новой версией ядра. Без резервной копии восстановление возможно только из бэкапа хостинга.

Почему товары из 1С выгружаются, но цены на сайте не меняются?

Частые причины: тип цены в 1С не совпадает с типом цены, привязанным к каталогу на сайте; выгрузка цен отключена в настройках узла обмена; страница каталога закеширована и показывает старые данные. Проверьте соответствие типов цен в настройках интеграции и сбросьте кеш после сеанса обмена.

Как узнать, какие модули нагружают сайт?

Откройте «Настройки → Производительность → Панель производительности» и запустите тест. Для детального анализа включите режим отладки SQL-запросов на тестовой копии: медленные запросы покажут, какой модуль или компонент создаёт основную нагрузку. На рабочем сайте режим отладки включать не следует.

Нужно ли отдельное окружение для тестирования доработок?

Да. Разверните копию сайта на поддомене или локальном сервере и проверяйте там обновления, новые шаблоны и настройки обмена. Прямые правки на рабочем сайте — главная причина внезапных сбоев, особенно когда с сайтом работает несколько специалистов.