2 php.ini 文件

2022-08-30 17:45:03

我发现:

当我在终端上键入以下内容时:

php -i | grep php.ini

我得到输出:

加载的配置文件是 @ /etc/php5/cli/php.ini

但是,从中看到:phpinfo()

加载的 ini 文件是 @ /etc/php5/apache2/php.ini

其中哪一个现在正在工作?怎么可能有两个文件?php.ini


答案 1

取决于您从哪里运行 PHP。如果从命令行运行它,它将在通过 apache 运行时使用 and。cli/php.iniapache2/php.ini

您正在通过浏览器执行,因此您将获得答案。从终端运行应输出 CLI ini。相同的功能,上下文更改。phpinfo()/etc/php5/apache2/php.iniphp -r "phpinfo();" | grep "Loaded Configuration"

该系统的优点显然是允许根据上下文的不同配置。对于一个简化的示例,您可能希望在 apache 中使用 on,但在 CLI 模式下是不必要的。safe_mode

你的路径实际上是非常不寻常的。通常,默认.ini是 just,并且调用 CLI .ini,它们驻留在同一文件夹中。.iniphp.iniphp-cli.ini

我不是这个主题的专家,但这应该是基本的想法。如果有人有任何更正,我很乐意听到他们。


答案 2

推荐