如果没有加载配置文件,PHP在哪里获取其设置?

时间:2013-03-27 01:25:31

标签: php

我在RHEL 4服务器上设置了PHP 5.3.10。

当我跑php -i | grep "Loaded"时,它返回了

Loaded Configuration File => (none)

这个设置没问题。 PHP正在按照我们需要的方式工作。我只需要知道,如果没有使用php.ini,PHP在哪里获得所有设置?感谢。

更新:我点击提交后意识到这一点。抱歉,如何将其移至Stack Overflow? -_-

更新2:php --ini的结果:

Configuration File (php.ini) Path: /usr/local/lib Loaded Configuration File: (none) Scan for additional .ini files in: (none) Additional .ini files parsed: (none)

3 个答案:

答案 0 :(得分:5)

如果没有加载php配置文件,它只需要默认值。请查看文档以获取默认值列表:

http://php.net/manual/en/ini.core.php

答案 1 :(得分:2)

这可能取决于您的服务器设置。

可以(取决于PHP版本)从Apache配置文件中控制PHP配置: How to change configuration settings

您可以使用phpinfo()函数查看PHP配置设置(包括配置文件目录)。创建一个名为info.php的文件(例如在“DocumentRoot”文件夹中),并编辑该文件以包含以下代码:

<? phpinfo(); ?>

因此,如果您的域名是:

http://example.com

你的“DocumentRoot”是:

".../www" or  ".../public_html"

将文件放在该文件夹中,然后使用浏览器转到:

http://example.com/info.php

这应该显示所有设置。

答案 2 :(得分:2)

首先,您必须了解命令行PHP使用另一个php.ini。 Apache(或NGINX等)模块使用另一个php.ini

您可以尝试使用更可靠的命令:php --ini而不是php -i,以确保它没有加载任何配置。

通常从php.ini

加载/etc/php5

如果命令没有显示任何内容,那么您可以尝试手动添加该文件(/etc/php5/cli/php.ini)并进行检查。

RedHat中,它可能直接位于/etc/目录。