Настройка OpenSearch для полнотекстового поиска в Битрикс
Стандартный поиск Битрикс использует таблицы MySQL для хранения поискового индекса. На проектах с большим объёмом контента это приводит к медленным запросам и высокой нагрузке на базу данных. Начиная с версии 25.0 модуля поиска, Битрикс поддерживает OpenSearch (форк Elasticsearch) — полнотекстовый поисковый движок с морфологией и горизонтальным масштабированием.
Настройка через административный раздел
Подключение OpenSearch выполняется в настройках модуля «Поиск» без написания кода:
- Перейдите в раздел Настройки → Настройки продукта → Настройки модулей → Поиск
- Откройте вкладку Морфология
- В поле Полнотекстовый поиск с помощью выберите OpenSearch
- Заполните параметры подключения:
- Сервер OpenSearch — адрес в формате
https://host:9200 - Пользователь — имя пользователя для авторизации
- Пароль — пароль пользователя
- Название индекса — произвольное имя (латиница, цифры, дефис, подчёркивание)
- Сервер OpenSearch — адрес в формате
- Для каждого сайта выберите Анализатор поисковых запросов (russian, english и др.)
- Сохраните настройки
После сохранения система проверит подключение. При успешном соединении появится уведомление о необходимости переиндексации.

Переиндексация контента
После смены поискового движка выполните полную переиндексацию:
- Перейдите в Настройки → Поиск → Переиндексация
- Установите флаг Очистить индекс
- Нажмите Начать и дождитесь завершения
Все существующие данные будут перенесены в OpenSearch. Новый контент индексируется автоматически.

Как это работает
После настройки класс CSearchFullText::getInstance() автоматически возвращает экземпляр CSearchOpenSearch вместо стандартного движка. Все компоненты поиска (bitrix:search.page, bitrix:search.title) начинают работать через OpenSearch без изменения кода.
Система создаёт отдельный индекс для каждого сайта с суффиксом: {index_name}-{site_id}. Шаблоны индексов обновляются автоматически при изменении версии модуля.
Поддерживаемые языковые анализаторы
OpenSearch поддерживает морфологический анализ для 30 языков. Основные:
| Анализатор | Язык |
|---|---|
| russian | Русский |
| english | Английский |
| german | Немецкий |
| french | Французский |
| spanish | Испанский |
Преимущества OpenSearch
- Быстрый полнотекстовый поиск на больших объёмах данных
- Встроенная морфология для множества языков
- Горизонтальное масштабирование через кластеризацию
- Снижение нагрузки на основную базу данных
- Релевантное ранжирование результатов
Переход на OpenSearch рекомендуется для проектов с количеством индексируемых документов свыше 50 000 или при высокой частоте поисковых запросов.