Estou tentando substituir a opcache.max_accelerated_files
configuração do PHP por meio do Ansible Role for PHP de geerlingguy na VM de geerlingguy/centos6 usando as seguintes linhas (como parte do script de provisionamento):
php_opcache_enabled_in_ini: false
php_opcache_enable_cli: 1
php_opcache_max_accelerated_files: "4096"
Isso parece funcionar (como 10-opcache.ini
é criado em /etc/php.d
) como:
opcache.enable=1
opcache.enable_cli=1
opcache.max_accelerated_files=8192
no entanto, a opção ainda não foi substituída pelo PHP:
$ php -i | grep opcache.max_accelerated_files
opcache.max_accelerated_files => 4000 => 4000
Isso ocorre porque opcache.ini
já tem essas configurações definidas:
$ grep ^opcache.max_accelerated_files opcache.ini
opcache.max_accelerated_files=4000
e de alguma forma tem precedência sobre 10-opcache.ini
.
Tentei alterar o padrão php_opcache_conf_filename
para opcache.ini
, mas 10-opcache.ini
fui substituído e apaguei o conteúdo anterior (incluindo zend_extension=opcache.so
a linha), então o OPcache foi desativado.
Como altero a configuração do PHP usando a função ansible para PHP, para que a configuração seja aplicada corretamente, o que substituiria o valor anterior?
Acho que é porque
10-opcache.ini
está antesopcache.ini
em ordem alfabética, o que é relevante para a ordem de carregamento. Portanto, a configuração deopcache.ini
é a última aplicada.Você pode alterar o nome do arquivo para algo como
zzz-opcache.ini
ou minha maneira preferida adicionar umzzz-custom.ini
com todas as suas configurações personalizadas em um arquivo.Por outro lado, por que você teria dois arquivos para o opcache? você pode combiná-los em um?