Yandex Metrika
sanches.free

pcre.recursion_limit и размер стека PHP в окружении 1С‑Битрикс

Когда это проявляется

Сложные регулярные выражения с глубокой вложенностью могут упираться в лимиты стека интерпретатора или в параметр рекурсии движка PCRE; в журналах появляются предупреждения вида ограничения рекурсии.

PHP-конфигурация

В дистрибутивном файле окружения /etc/php.d/bitrixenv.ini найдите pcre.recursion_limit и повысьте значение до безопасного для вашего железа (например, с 14000 до 100000). Не ставьте бесконечность без понимания пикового потребления памяти.

Стек Apache

На старых пакетах с SysV init-скриптом /etc/rc.d/init.d/httpd добавьте строку ulimit -s unlimited внутрь функции start() до запуска демона, чтобы убрать жёсткий потолок размера стека процессов prefork/event.

После изменений

Перезапустите HTTPD и прогоните проблемную страницу. На современных установках проверьте актуальный unit systemd: правки делаются через drop-in к сервису, чтобы ulimit сохранился после обновлений пакета.

Не хотите копаться сами?

Починю за 1-3 дня. Без предоплаты — оплата по результату.

15+ лет опыта с 1С-Битрикс · Без предоплаты · 7 дней гарантии