Назад | Перейти на главную страницу

предоставить PHP разрешение на выделение исполняемой памяти

Я получил это сообщение во время установки iTop. Если вы загуглите это, оно появится на коммерческих сайтах над их содержанием.

Предупреждение: filter_var (): не удалось выделить JIT-память, PCRE JIT будет отключен. Вероятно, это связано с ограничениями безопасности. Либо предоставьте PHP разрешение на выполнение памяти, либо установите pcre.jit = 0 в /var/www/html/itop/web/application/utils.php в строке 338.

«Исправление» включено в предупреждающее сообщение, но я хотел бы больше узнать о том, что происходит. Возможно, я хочу, чтобы PHP выделял исполняемую память. Любое понимание будет оценено.

Последние версии PHP, systemd и selinux налагают ограничения и блоки безопасности на доступ или динамическое выделение системных ресурсов такими вещами, как PHP (и php-fpm). Для производственных целей наиболее безопасный параметр - отключить его в вашей конфигурации .ini (pcre.jit = 0), однако, если вы хотите "разблокировать" его в selinux:

setsebool -P httpd_execmem on

Для php-fpm 7.4 на systemd некоторые ограничения помещены в служебный файл php-fpm, в зависимости от вашей ОС могут быть в /lib/systemd/system/php-fpm.service. Ограничения задокументированы в комментариях в этом файле.

Связанный трекер ошибок PHP здесь: https://bugs.php.net/bug.php?id=78630