Моя локальная установка PHP начала делать это недавно, но я не знаю, что изменилось и могло бы начать это. Он полностью отказывается от 100% загрузки процессора, когда я вызываю mycrypt_create_iv
, но только тогда, когда это mycrypt_create_iv
Apache. Когда я вызываю его из CLI, он возвращается почти мгновенно. Мой тестовый файл выглядит следующим образом:
<?php echo mcrypt_create_iv(16, MCRYPT_DEV_URANDOM);
Значения – это, конечно, то, с чем вызывала функция, когда я обнаружил эту проблему. Эта проблема возникает с PHP 5.5 или 5.6, поэтому я не думаю, что это конкретная версия PHP.
Я запускаю Gentoo Linux, поэтому вполне возможно, что основной причиной была проблема сборки, но я не переработал libmcrypt, PHP и Apache.
После некоторых экспериментов я получил его.
У меня не было APACHE2_MPMS
установленного в make.conf
, поэтому оно было по умолчанию для worker
MPM. Я установил его, чтобы использовать prefork
и эта проблема устранена.
У меня был установлен флаг USE, который противоречил prefork
и PHP, поэтому я удалил этот флаг использования. С моим профилем это означало, что большинство пакетов с этим флагом все еще устанавливали его, но php
и mod_php
отключены.
кажется ошибкой ( https://bugs.php.net/bug.php?id=69833 ) php, которая зафиксирована в 5.6.13