Как переопределить предыдущее определенное значение PHP через роль Ansible PHP?

Я пытаюсь применить переопределить PHP opcache.max_accelerated_files установка через Ansible Role для PHP от geerlingguy на виртуальную машину geerlingguy/centos6 с использованием следующих строк (как часть сценария обеспечения):

php_opcache_enabled_in_ini: false
php_opcache_enable_cli: 1
php_opcache_max_accelerated_files: "4096"

Это похоже на работу (как 10-opcache.ini создан в /etc/php.d) как:

opcache.enable=1
opcache.enable_cli=1
opcache.max_accelerated_files=8192

однако опция все еще не переопределена для PHP:

$ php -i | grep opcache.max_accelerated_files
opcache.max_accelerated_files => 4000 => 4000

Это потому что opcache.ini уже установлены эти настройки:

$ grep ^opcache.max_accelerated_files opcache.ini 
opcache.max_accelerated_files=4000

и как-то это имеет приоритет над 10-opcache.ini,

Я пытался изменить по умолчанию php_opcache_conf_filename в opcache.ini, но потом 10-opcache.ini был переопределен и стер предыдущий контент (включая zend_extension=opcache.so линия), поэтому OPcache отключен.

Как изменить настройку PHP, используя ANSIBLE роль для PHP, чтобы настройка применялась правильно, что переопределит предыдущее значение?

1 ответ

Решение

Я думаю это потому что 10-opcache.ini раньше opcache.ini в алфавитном порядке, что актуально для порядка загрузки. Так что конфиг opcache.ini последний примененный.

Вы можете изменить имя файла на что-то вроде zzz-opcache.ini или мой предпочтительный способ добавить zzz-custom.ini со всеми вашими пользовательскими конфигами в одном файле.

С другой стороны, зачем вам два файла для opcache? Вы можете объединить их в один?

Другие вопросы по тегам