2个php.ini文件
-
28-09-2019 - |
题
我发现:
当我在终端上输入以下内容时:
php -i | grep php.ini
我得到输出:
加载的配置文件是 @ /etc/php5/cli/php.ini
但是,来自 phpinfo()
, ,我可以看到:
加载的INI文件是 @ /etc/php5/apache2/php.ini
其中哪一个正在起作用?如何有两个 php.ini
文件?
解决方案
取决于您从哪里运行PHP。如果您从命令行运行它,则使用 cli/php.ini
和 apache2/php.ini
通过Apache运行时。
您正在执行 phpinfo()
通过浏览器,您得到 /etc/php5/apache2/php.ini
作为答案。跑步 php -r "phpinfo();" | grep "Loaded Configuration"
从终端应输出CLI INI。相同的功能,上下文更改。
该系统的优点显然是根据上下文允许不同的配置。对于简化的例子,您可能想拥有 safe_mode
在Apache中,但在CLI模式下是不必要的。
您的 .ini
路径实际上是非常不寻常的。通常,默认.ini只是 php.ini
和cli .ini被称为 php-cli.ini
它们位于同一文件夹中。
我不是这个主题的专家,但这应该是基本想法。如果有人有任何更正,我很高兴听到他们的声音。
不隶属于 StackOverflow