php.d / *. ini não sobrescrevendo o php.ini no PHP 5.5

1

Meu /etc/php.ini tem a seguinte configuração:

upload_max_filesize = 2M
post_max_size = 32M

E /etc/php.d/app.ini contém:

upload_max_filesize = 64M
post_max_size = 64M

Com o PHP 5.4, o PHP estava dando precedência aos valores do app.ini sobre os do php.ini; no entanto, desde que eu mudei para o PHP 5.5, eles não estão mais tendo precedência:

# php -r "echo ini_get('upload_max_filesize');"
2M

O arquivo app.ini parece analisado com sucesso pelo PHP:

# php --ini
...
/etc/php-5.5.d/app.ini,
...

( /etc/php.d é um link simbólico para /etc/php-5.5.d )

Como posso forçar arquivos php.d ini a ter precedência sobre o php.ini?

Se isso faz alguma diferença, estou usando o contêiner AWS Elastic Beanstalk para o PHP 5.5.

    
por Benjamin 13.01.2014 / 11:25

1 resposta

3

Descobrimos o motivo, que é de fato específico para o contêiner do Elastic Beanstalk para o PHP 5.5 .

Por algum motivo obscuro, a equipe da AWS escolheu mover php.ini de seu local original em /etc/php.ini para /etc/php.d/php.ini .

Como os arquivos em php.d são processados em ordem alfabética, meu app.ini agora foi processado antes de php.ini e, portanto, foi substituído.

Eu abri uma discussão nos fóruns da AWS , para perguntar à AWS se eles considerariam movendo php.ini de volta para sua localização original.

Nesse meio tempo, a solução é simplesmente renomear o arquivo para que ele apareça depois do php.ini , no meu caso, renomear para zapp.ini fez o truque.

    
por 13.01.2014 / 12:14