PHP 7.2.0 Release Candidate 4 Released

Arquivos .user.ini

A partir do PHP 5.3.0, o PHP tem suporte para arquivos de configuração INI por cada diretório. Esses arquivos são processados apenas pelo CGI/FastCGI SAPI. Essa funcionalidade torna obsoleta a extensão PECL htscanner. Se você está usando Apache, use arquivos .htaccess para o mesmo efeito.

Além do arquivo php.ini principal, o PHP procura por arquivos INI em cada diretório, iniciando no diretório do arquivo PHP requisitado e continua o caminho até a raiz do documento atual (conforme definido na variável $_SERVER['DOCUMENT_ROOT']). Caso o arquivo PHP esteja fora da raiz do documento, apenas o seu diretório é procurado.

Somente configurações INI com os modos PHP_INI_PERDIR e PHP_INI_USER serão reconhecidos nos arquivos INI estilo .user.ini.

Duas novas diretivas INI, user_ini.filename e user_ini.cache_ttl controlam o uso de arquivos INI de usuário.

A user_ini.filename define o nome do arquivo que o PHP procura em cada diretório; se for definido como uma string vazia, o PHP não fará a varredura em tudo. O padrão é .user.ini.

user_ini.cache_ttl controla a frequência de como os arquivos INI de usuário são relidos. O padrão é 300 segundos (5 minutos).

add a note add a note

User Contributed Notes 4 notes

Anteaus at thenox dot com
3 years ago
"If you are using Apache, use .htaccess files for the same effect."

To clarify, this applies only to Apache module mode. If you put php directives in .htaccess on an Apache CGI/FastCGI server, this will bomb the server out with a 500 error. Thus, you unfortunately cannot create a config which caters for both types of hosting, at least not in any straightforward way.
philsward at gmail dot com
4 years ago
If you have no idea what "PHP_INI_PERDIR" or "PHP_INI_USER" are or how they relate to setting a .user.ini file, take a look at the ini.list page:

Basically, anything in the "Changeable" column labeled as PHP_INI_SYSTEM can't be set in the .user.ini file (so quit trying).  It can ONLY be set at the main php.ini level.
6 years ago
This article should be made clearer.
".htaccess-style INI files" meant to me that the ini settings had to follow the syntax used in .htaccess, but this is not the case!

You have to use
and not
php_flag register_globals on

Also, the changes can take a while to propagate to all processes if you have a long process time out.
Restarting php-fpm can give you an answer quicker :)
1 year ago
One of the most used is to limit the uploading size and memory limit:

upload_max_filesize = 1000M
To Top