神秘的.user.ini文件

神秘的.user.ini文件

.user.ini到底是个神秘东东?

咱们看看官方怎么说:php

http://php.net/manual/zh/conf...

自 PHP 5.3.0 起,PHP 支持基于每一个目录的 .htaccess 风格的 INI 文件。此类文件仅被 CGI/FastCGI SAPI 处理。此功能使得 PECL 的 htscanner 扩展做废。若是使用 Apache,则用 .htaccess 文件有一样效果。html

小白表示没看懂~web

众所周知,php.ini是php的核心配置文件,在 PHP 启动时被读取,那么web目录的其余ini文件也是能够被php识别,官方还说了shell

除了主 php.ini 以外,PHP 还会在每一个目录下扫描 INI 文件,从被执行的 PHP 文件所在目录开始一直上升到 web 根目录($_SERVER['DOCUMENT_ROOT'] 所指定的)。若是被执行的 PHP 文件在 web 根目录以外,则只扫描该目录。

这样说的话,全部的配置均可以被.user.ini从新配置修改?噢,麦噶的网站

你想多了,官方还说了:.net

在 .user.ini 风格的 INI 文件中只有具备 PHP_INI_PERDIRPHP_INI_USER 模式的 INI 设置可被识别。

小白,又举手了,什么是PHP_INI_*模式呢?code

官方是这样说的:htm

配置可被指定的范围( http://php.net/manual/zh/conf...

这些模式决定着一个 PHP 的指令在什么时候何地,是否可以被设定。手册中的每一个指令都有其所属的模式。例若有些指令能够在 PHP 脚本中用 ini_set() 来设定,而有些则只能在 php.ini 或 httpd.conf 中。ci

例如 output_buffering 指令是属于 PHP_INI_PERDIR,于是就不能用 ini_set() 来设定。可是 display_errors 指令是属于 PHP_INI_ALL 于是就能够在任何地方被设定,包括 ini_set()lnmp

PHP_INI_*模式的定义

模式    含义
PHP_INI_USER    可在用户脚本(例如 ini_set())或 Windows 注册表(自 PHP 5.3 起)以及 .user.ini 中设定
PHP_INI_PERDIR    可在 php.ini,.htaccess 或 httpd.conf 中设定
PHP_INI_SYSTEM    可在 php.ini 或 httpd.conf 中设定
PHP_INI_ALL    可在任何地方设定

也就是说只有PHP_INI_USER模式,才能够在 .user.ini 中设定,那么哪些配置能够在 .user.ini 中设定呢?

php.ini配置选项列表( http://php.net/manual/zh/ini....

有点意思,并非全部的配置 .user.ini 都能修改,好比 disable_functionsupload_max_filesize

千年未解之谜,是否是在这里找到了答案?

  • 访问php页面出现“No input file specified”,尝试各类办法(https://jingyan.baidu.com/art... ) 无果,你是否开始怀疑本身人品,是否开始怀疑肾亏了,是否以为本身这么年轻就不行了?

    绝望中,你是否发现你的网站目录中有个叫 .user.ini 的文件,一气之下,决定删了它,哦,没错,是个办法。
  • 啥? .user.ini 删不掉,是否是以为本身真的不行了?

    [root@Tech1024]# rm -rf .user.ini 
    rm: cannot remove ‘.user.ini’: Operation not permitted

    来看一下,该文件的属性

    [root@Tech1024]# lsattr .user.ini 
    ----i--------e-- .user.ini

    没错,文件被锁定了,不能修改,那么咱们去除文件锁定属性

    [root@Tech1024]# chattr -i .user.ini

    是否是能够删除了,你是否是喜极而泣,啊,本身终于又行了。

  • 哎,小白可能以为本身又不行了,怎么仍是“No input file specified”啊?

    年轻人,别着急,看看官方吧( http://php.net/manual/zh/conf... )。

    user_ini.cache_ttl 控制着从新读取用户 INI 文件的间隔时间。默认是 300 秒(5 分钟)。

    ……

    5分钟艰难的过去了,你是否再一次喜极而泣:哎,本身终究仍是行了。

.user.ini有什么用呢?

好奇请猛戳 https://lnmp.org/faq/lnmp-vho...

最后

做为一个IT职业人,不论从事什么行业,铭记两点 技术和态度,技术决定了你的存在,态度决定了你能存在多久。

原文 http://www.tech1024.com/origi...
相关文章
相关标签/搜索