.user.ini dosyaları

PHP 5.3.0'dan beri, dizinler için .htaccess tarzı INI dosyaları desteklenmektedir. Bu dosyalar sadece CGI/FastCGI SAPI tarafından işlenir. Bu işlevsellik ile PECL htscanner eklentisi atıl duruma düşmüştür. Apache kullanıyorsanız aynı etkiyi elde etmek için .htaccess dosyalarını kullanın.

Ana php.ini dosyasına ek olarak, PHP istenen PHP dosyasının bulunduğu dizinden itibaren her dizini INI dosyaları için tarar ve bunları geçerli belge kök dizinine uygulanıyormuş gibi uygular ($_SERVER['DOCUMENT_ROOT'] değişkenine atandığı gibi). PHP dosyasının belge kökü dışında olduğu durumlarda sadece onun dizini taranır.

.user.ini tarzı INI dosyalarında sadece PHP_INI_PERDIR ve PHP_INI_USER kipindeki INI ayarları işleme sokulur.

Kullanıcı INI dosyalarını denetlemek için iki yeni INI yönergesi kullanılmaktadır: user_ini.filename ve user_ini.cache_ttl.

user_ini.filename ile PHP'nin dizinlerde arayacağı dosyanın ismi belirtilir. .user.ini öntanımlı değerdir.

user_ini.cache_ttl ile kullanıcı INI dosyalarının ne sıklıkta denetleneceği belirtilir. 300 saniye (5 dakika) öntanımlı değerdir.

add a note add a note

User Contributed Notes 8 notes

info at vincentraal.nl
6 months ago
Be aware that PECL htscanner doesn't work (yet) on PHP7.0.

'pecl install htscanner' throws an "zend_hash_update’ undeclared'" error.
philsward at gmail dot com
5 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: http://www.php.net/manual/en/ini.list.php

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.
Anteaus at thenox dot com
4 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.
8 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 :)
8 months ago
> Thus, you unfortunately cannot create a config which caters for both types of hosting, at least not in any straightforward way.

That's actually not true, as you can easily wrap all PHP things in conditional block in .htaccess using <IfModule>, i.e.

    <IfModule mod_php7.c>
       php_value ....
1 year ago
Just for clarification: The file name is indeed ".user.ini" (with a trailing dot), not "user.ini". This is not a misspelling.

But "php.ini" is without a trailing dot.
amillionlobsters at gmail dot com
1 year ago
Note that, while the documentation's claim that "only settings with the modes PHP_INI_PERDIR and PHP_INI_USER will be recognised" is technically correct, it's ambiguous: settings with the modes PHP_INI_ALL will be recognised, because PHP_INI_ALL = PHP_INI_PERDIR | PHP_INI_USER | PHP_INI_SYSTEM.
3 years ago
One of the most used is to limit the uploading size and memory limit:

upload_max_filesize = 1000M
To Top