场景
.user.ini
文件放置于PHP项目的目录下,用于对具体项目的进行更灵活的配置。常见的文件内容如下:1
2;Limit the files that can be accessed by PHP to the specified directory-tree, including the file itself.
open_basedir=/home/test/pro:/tmp/:/proc/:/var/tmp/
open_basedir
限制PHP对于指定文件的访问权限
介绍
自5.3.0版本起,PHP加入了对每个目录下的INI配置文件的支持,但仅在CGI/FastCGI SAPI下被支持。
除了主要的配置文件php.ini
,PHP会浏览每个目录,从当前请求文件所属目录一直上溯到$_SERVER['DOCUMENT_ROOT']
,如果当前文件在[DOCUMENT_ROOT]
外,则只会浏览当前目录。浏览完所得有效配置文件,会覆盖php.ini
中的配置,作为当前配置。
- 若请求文件目录,和root目录的
.user.ini
文件分别包含相同的配置,则以文件目录为准 - 具体什么配置可以放在
.user.ini
文件中,php.ini
中的配置(引用3)有一列”Changeable”列,PHP_INI_PERDIR和PHP_INI_USER可以写在.user.ini
中
(大部分翻译自官网,加入少部分自己理解)
生效
.user.ini
是默认文件名,在php.ini中可以配置1
2;TTL for user-defined php.ini files (time-to-live) in seconds. Default is 300 seconds (5 minutes)
;user_ini.cache_ttl = 300
默认修改后5分钟生效,也可直接重启PHP-FPM