Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typo3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
2个php.ini文件_Php_Configuration Files_Php 5.3 - Fatal编程技术网

2个php.ini文件

2个php.ini文件,php,configuration-files,php-5.3,Php,Configuration Files,Php 5.3,我发现: 当我在终端上键入以下内容时: php -i | grep php.ini 我得到输出: 加载的配置文件是@/etc/php5/cli/php.ini 然而,从phpinfo(),我看到: 加载的ini文件是@/etc/php5/apache2/php.ini 哪一个正在工作?如何可能有两个php.ini文件?取决于运行php的位置。如果您从命令行运行它,它在通过apache运行时使用cli/php.ini和apache2/php.ini 您正在通过浏览器执行phpinfo(),因此得

我发现:

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

php -i | grep php.ini
我得到输出:

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

然而,从
phpinfo()
,我看到:

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


哪一个正在工作?如何可能有两个
php.ini
文件?

取决于运行php的位置。如果您从命令行运行它,它在通过apache运行时使用
cli/php.ini
apache2/php.ini

您正在通过浏览器执行
phpinfo()
,因此得到的答案是
/etc/php5/apache2/php.ini
。从终端运行
php-r“phpinfo();”| grep“加载的配置”
,应该会输出CLI ini。同样的功能,上下文改变

该系统的优点显然是允许根据上下文进行不同的配置。作为一个简化的示例,您可能希望在apache中启用
safe_模式
,但在CLI模式下没有必要这样做

您的
.ini
路径实际上非常不寻常。通常,默认的.ini只是
php.ini
,CLI.ini被称为
php CLI.ini
,它们位于同一个文件夹中


我不是这方面的专家,但这应该是基本的想法。如果有人有任何更正,我很乐意听到。服务器上的路径可能与browserYup中显示的路径不同。你说得对。CLI和Apache的不同INI文件背后的基本思想是,一个系统上可以运行多个虚拟服务器。感谢您的回答。@HrishikeshChoudhari“CLI和Apache的不同INI文件背后的基本思想是一个系统上可以运行多个虚拟服务器。”100%不是这样。PHP.ini的PHPCLI版本是用于命令行PHP的。Apache模块
php.ini
用于Apache php模块。两件截然不同的事情。