Похоже, что они являются внутренними настройками механизма PCRE, чтобы ограничить максимальный объем памяти / время, затрачиваемое на сопоставление некоторого текста с шаблоном. pcreapi
Страница руководства делает мало , чтобы объяснить это с точки зрения непрофессионала:
Поле match_limit позволяет предотвратить использование PCRE огромного количества ресурсов при запуске шаблонов, которые не будут соответствовать, но которые имеют очень большое количество возможностей в своих деревьях поиска. Классическим примером является использование вложенных неограниченных повторов.
Внутри PCRE использует функцию match (), которую он вызывает неоднократно (иногда рекурсивно). Ограничение, установленное match_limit, накладывается на количество раз, которое эта функция вызывается во время сопоставления, что приводит к ограничению количества возвратов, которые могут иметь место. Для шаблонов, которые не привязаны, отсчет начинается с нуля для каждой позиции в строке темы.
Значение по умолчанию для лимита может быть установлено при сборке PCRE; значение по умолчанию составляет 10 миллионов, что обрабатывает все, кроме самых крайних случаев. Вы можете переопределить значение по умолчанию, добавив pcre_exec () к блоку pcre_extra, в котором установлено match_limit, а в поле флагов установлено PCRE_EXTRA_MATCH_LIMIT. Если лимит превышен, pcre_exec () возвращает PCRE_ERROR_MATCHLIMIT.
Поле match_limit_recursion аналогично match_limit, но вместо ограничения общего числа вызовов метода match () оно ограничивает глубину рекурсии. Глубина рекурсии меньше, чем общее количество вызовов, потому что не все вызовы match () являются рекурсивными. Этот предел полезен, только если он установлен меньше, чем match_limit.
Поскольку встроенная библиотека PCRE по умолчанию - 10000000, я предполагаю, что для mod_security предлагается более низкая настройка, чтобы запросы не задерживались в течение длительного времени.