Администрирование · 12 мин
Какие расширения PHP требуются для корректной работы 1С-Битрикс
Какие расширения PHP нужны для корректной работы 1С-Битрикс: обязательный минимум, рекомендуемые модули, проверка и устранение типичных ошибок установки.
1С-Битрикс «Управление сайтом» и «Корпоративный портал» работают на PHP, и корректность их работы напрямую зависит от набора подключённых расширений интерпретатора. Если хотя бы один обязательный модуль отсутствует, установщик откажется продолжать развёртывание, а уже работающий сайт начнёт выдавать ошибки — от белого экрана до невозможности загрузить файлы или отправить почту.
Точный перечень зависит от редакции продукта и версии PHP, но ядро требований стабильно: расширения для работы с базой данных, обработки изображений, многобайтовых строк, архивов и сетевых запросов. Дополнительно Битрикс предъявляет требования к настройкам самого PHP — версии, лимитам памяти, параметрам загрузки файлов.
Ниже разобран обязательный минимум, рекомендуемые модули, способы проверки окружения до и после установки, а также типичные ошибки, с которыми сталкиваются при подготовке сервера.
Обязательный минимум: без каких расширений Битрикс не запустится
Базовый набор модулей, без которых установка и штатная работа продукта невозможны, включает расширения для доступа к базе данных, обработки строк и изображений, работы с архивами и сетью. Их отсутствие приводит к остановке установщика либо к критическим ошибкам в работе модулей.
| Расширение | Для чего нужно | Что будет без него |
|---|---|---|
mysqli / mysqlnd | Подключение к MySQL/MariaDB | Сайт не подключается к БД, установка невозможна |
mbstring | Работа с многобайтовыми строками (UTF-8) | Ошибки обработки текста, установщик останавливается |
gd | Генерация и ресайз изображений, CAPTCHA | Не работают превью, капча, водяные знаки |
zlib | Сжатие данных, распаковка обновлений | Не ставятся обновления и решения из Marketplace |
json | Обработка JSON в ядре и REST | Ошибки API, интеграций, настроек модулей |
curl | HTTP-запросы к внешним сервисам | Не работают обновления, интеграции, платёжные шлюзы |
dom, xml, simplexml | Разбор XML (импорт, выгрузки, RSS) | Не работают импорт каталогов, CommerceML-обмены |
openssl | HTTPS-соединения, шифрование | Ошибки защищённых соединений и лицензионных запросов |
zip | Создание и распаковка ZIP-архивов | Не работают резервное копирование и установка решений |
pcre, session, hash, tokenizer | Базовые механизмы ядра | Ядро не запускается либо работает с ошибками |
Часть этих расширений (например, json, pcre, session, hash) в современных сборках PHP включена по умолчанию или встроена в ядро интерпретатора. Однако в минимальных пакетах некоторых дистрибутивов Linux даже они поставляются отдельно — проверять наличие нужно каждого модуля, а не предполагать, что он есть.
Рекомендуемые расширения: производительность и дополнительные функции
Необязательные модули не блокируют установку, но заметно влияют на скорость работы и доступность отдельных возможностей. На рабочем проекте их отсутствие проявляется как медленная генерация страниц или отказ конкретных функций.
opcache— кеширует скомпилированный байт-код PHP; без него каждая страница компилируется заново, нагрузка на процессор растёт в разы.apcu— пользовательское кеширование; используется Битриксом как один из вариантов хранения кеша.memcachedилиredis— внешние хранилища кеша и сессий, актуальны для нагруженных проектов.intl— интернационализация; нужна для корректной транслитерации и работы с локалями.imagick— альтернатива GD с более качественной обработкой изображений.exif— чтение метаданных изображений; используется медиабиблиотекой и фотогалереями.fileinfo— определение MIME-типов загружаемых файлов; влияет на безопасность загрузок.ldap— интеграция с Active Directory; нужна только корпоративным порталам с доменной авторизацией.soap— обмены по SOAP, в том числе некоторые сценарии интеграции с 1С.sockets,imap— работа встроенного почтового клиента и CRM-почты.
Практическое правило: ставьте обязательный минимум плюс opcache, intl, exif и fileinfo всегда, а ldap, soap, imap — только если соответствующие функции реально используются. Лишние модули не ускоряют сайт, но расширяют поверхность для обновлений и потенциальных уязвимостей.
GD или Imagick для обработки изображений
Обязательный минимум, есть везде. Достаточен для превью и водяных знаков, но хуже работает с цветовыми профилями и большими файлами.
Качественнее ресайз и поддержка форматов, но требует установки библиотеки ImageMagick на сервер и больше памяти на обработку.
Как проверить окружение до установки
Самый быстрый способ увидеть список подключённых модулей — выполнить в консоли сервера команду php -m. Она выведет все загруженные расширения для CLI-режима. Важно помнить: конфигурация PHP для командной строки и для веб-сервера (Apache/Nginx + PHP-FPM) может отличаться, поэтому проверять нужно именно веб-окружение.
Для проверки веб-окружения создайте в корне сайта файл с вызовом phpinfo() и откройте его в браузере. В выводе будут видны все модули, версия PHP и ключевые директивы. После проверки файл обязательно удалите — он раскрывает внутреннее устройство сервера.
php -m | grep -iE 'mysqli|mbstring|gd|curl|zip|xml|openssl|opcache|intl|imagick'Более полную картину даёт официальный тестовый скрипт bitrix_server_test.php от разработчика. Он проверяет не только наличие расширений, но и версию PHP, настройки php.ini, права на файлы, доступность базы данных и выдаёт итоговое заключение о пригодности сервера.
- 1Установите PHP нужной версии и обязательные модули пакетным менеджером вашей ОС
- 2Разместите в корне сайта скрипт bitrix_server_test.php и откройте его в браузере
- 3Исправьте все пункты, отмеченные как критические несоответствия
- 4Проверьте директивы php.ini: memory_limit, upload_max_filesize, post_max_size, max_execution_time
- 5Удалите тестовые скрипты после завершения проверки
Настройки php.ini, без которых расширения не спасут
Даже при полном наборе модулей Битрикс не будет нормально работать при неверных директивах PHP. Установщик и монитор производительности проверяют эти параметры и выдают предупреждения.
memory_limit— рекомендуется от 256 МБ; на проектах с обменами и резервным копированием может потребоваться больше.upload_max_filesizeиpost_max_size— ограничивают загрузку файлов; при маленьких значениях не загружаются обновления и большие файлы в админке.max_execution_time— при слишком низком значении обрываются длинные операции: обмен с 1С, переиндексация поиска, резервное копирование.mbstring.func_overload— должна быть отключена (значение 0); включённая перегрузка ломает работу ядра.date.timezone— должна быть явно задана, иначе возможны ошибки в расписании агентов и логах.opcache.enable— включённый OPcache заметно ускоряет административный раздел и публичную часть.
Директивы меняются в php.ini соответствующего SAPI (для PHP-FPM — отдельный файл, для Apache с mod_php — свой). После правок требуется перезапуск PHP-FPM или веб-сервера, иначе изменения не применятся.
Проверка уже работающего сайта
На действующем проекте состояние окружения проверяется штатными средствами: в административном разделе откройте «Настройки → Инструменты → Проверка системы». Отчёт покажет обязательные и рекомендуемые параметры, отметит нарушения красным и подскажет, что именно исправить.
Дополнительно полезен «Монитор производительности» («Настройки → Производительность → Панель производительности»): он выявляет проблемы конфигурации PHP, кеширования и базы данных под реальной нагрузкой, а не только формальное наличие модулей.
Как проверить результат настройки
Все обязательные пункты зелёные, критических замечаний нет
Красные пункты по расширениям, memory_limit или mbstring
Обновления платформы и решения Marketplace скачиваются и ставятся
Ошибки распаковки, таймауты, обрывы соединения
Превью создаются, капча отображается
Пустые картинки вместо превью, не показывается капча
Выгрузка каталога проходит без ошибок XML
Ошибки разбора XML, пустые ответы при обмене
Типичные ошибки и ограничения
Наиболее частая проблема — разные конфигурации PHP для CLI и веба: агенты на cron запускаются из командной строки, и если в CLI-сборке нет нужного модуля, фоновые задачи падают, хотя сайт в браузере работает. Проверяйте оба окружения.
Вторая группа ошибок связана с виртуальным хостингом: там часть директив (memory_limit, max_execution_time) ограничена тарифом, а расширения вроде imagick или redis недоступны вовсе. Если проекту нужны специфические модули и высокие лимиты, потребуется VPS или выделенный сервер.
Частые вопросы
Какая версия PHP нужна для 1С-Битрикс?
Требования зависят от версии продукта: свежие версии ядра работают на актуальных ветках PHP и не поддерживают старые. Перед установкой или обновлением сверьтесь с системными требованиями вашей редакции в документации — универсального номера версии для всех выпусков нет.
Сайт показывает белый экран после смены версии PHP — что делать?
Включите отображение ошибок в настройках PHP или посмотрите лог ошибок веб-сервера. Чаще всего причина — отсутствующее расширение (например, mysqli или mbstring) в новой сборке PHP либо несовместимость версии с ядром. Верните прежнюю версию PHP, установите недостающие модули и повторите переход на тестовой копии.
Обязательно ли ставить Imagick, если есть GD?
Нет. GD полностью закрывает обязательные потребности — превью, капчу, водяные знаки. Imagick имеет смысл добавлять, когда важно качество обработки фотографий, поддержка расширенного набора форматов или работа с цветовыми профилями.
Почему обмен с 1С не работает, хотя все расширения установлены?
Проверьте лимиты max_execution_time, memory_limit, post_max_size и upload_max_filesize — большие выгрузки упираются именно в них. Также убедитесь, что доступны xml/dom и zip, а веб-сервер (Nginx/Apache) не обрывает длинные запросы своими таймаутами.
Можно ли запустить Битрикс на виртуальном хостинге?
Да, если тариф предоставляет обязательные расширения, достаточный memory_limit и возможность менять базовые директивы PHP. Перед покупкой проверьте хостинг скриптом bitrix_server_test.php — многие провайдеры дают тестовый период. Для проектов с интеграциями, Redis или LDAP обычно нужен VPS.
Как проверить, что агенты и cron работают корректно?
Убедитесь, что CLI-версия PHP имеет тот же набор модулей, что и веб (сравните вывод php -m с phpinfo). Затем в админке откройте список агентов и проверьте даты последнего выполнения — просроченные агенты при настроенном cron указывают на проблему в CLI-окружении.
Что важно запомнить
Обязательный минимум для Битрикс: mysqli, mbstring, gd, zlib, json, curl, xml/dom, openssl, zip и базовые модули ядра; для производительности добавьте opcache, intl, exif и fileinfo. Проверяйте окружение скриптом bitrix_server_test.php до установки и «Проверкой системы» после, следите за memory_limit, лимитами загрузки и отключённой mbstring.func_overload. Любую смену версии PHP сначала отрабатывайте на тестовой копии с резервной копией.