我在哪里可以找到 php-cli 的 php.ini

Posted

技术标签:

【中文标题】我在哪里可以找到 php-cli 的 php.ini【英文标题】:where can I find the php.ini for php-cli 【发布时间】:2011-03-04 16:21:09 【问题描述】:

似乎 php 命令行使用的 php.ini 与主 php 解释器不同。我正在使用 Ubuntu 10.4。我的问题是,在主 php.ini 中,我为外部库包含了一个额外的路径,但在 cli 版本中不存在,因此出现路径包含错误。

谢谢

【问题讨论】:

How to find the php.ini file used by the command line? 的可能重复项 【参考方案1】:

只问PHP:

php -i |grep php\.ini

【讨论】:

比我的答案更好,因为它适用于非默认和非 Ubuntu 使用。 我收到了Configuration File (php.ini) Path => /usr/local/lib64,但 php.ini 不在此文件夹中。 如果您没有看到php.ini,则表示它不存在,PHP 采用默认值。您可以在此目录中创建新的php.ini 文件。【参考方案2】:

更好: $ php --ini

这也会显示所有额外加载的 *.ini 文件(通常挂在 debian 的某个 conf.d 目录中):

配置文件 (php.ini) 路径:/etc/php5/cli 加载的配置文件:/etc/php5/cli/php.ini 在以下位置扫描其他 .ini 文件:/etc/php5/cli/conf.d 解析的其他 .ini 文件:/etc/php5/cli/conf.d/apc.ini, /etc/php5/cli/conf.d/curl.ini, /etc/php5/cli/conf.d/gd.ini, /etc/php5/cli/conf.d/geoip.ini, /etc/php5/cli/conf.d/imagick.ini, /etc/php5/cli/conf.d/imap.ini, /etc/php5/cli/conf.d/ldap.ini, /etc/php5/cli/conf.d/memcache.ini, /etc/php5/cli/conf.d/memcached.ini, /etc/php5/cli/conf.d/ming.ini, /etc/php5/cli/conf.d/mysql.ini, /etc/php5/cli/conf.d/mysqli.ini, /etc/php5/cli/conf.d/pdo.ini, /etc/php5/cli/conf.d/pdo_mysql.ini, /etc/php5/cli/conf.d/pdo_sqlite.ini, /etc/php5/cli/conf.d/snmp.ini, /etc/php5/cli/conf.d/sqlite.ini, /etc/php5/cli/conf.d/sqlite3.ini, /etc/php5/cli/conf.d/suhosin.ini, /etc/php5/cli/conf.d/tidy.ini, /etc/php5/cli/conf.d/xdebug.ini, /etc/php5/cli/conf.d/xsl.ini

注意这是关于 php-cli,php-cgi 没有这个 afaik。

【讨论】:

关于所有 conf.d 文件的注释 - 在 Ubuntu 中,该文件夹是一个符号链接,因此它们在所有 PHP 用户之间共享。 因为它是 Debian 的默认设置,假设从普通存储库安装一个。【参考方案3】:

在我的上一份工作中,我养成了在每次执行时指定我的 ini 文件的习惯......

C:\php\cli\php.exe -c C:\php\php.ini myscript.php

【讨论】:

有趣。我喜欢。我现在刚刚将它用于我的一个带有自定义 php.ini 文件的 cron 作业。【参考方案4】:

您可以使用以下命令找到 php.ini。在 LINUX 中

find / -name php.ini

locate php.ini

【讨论】:

这没有回答问题 @ninja,为什么不呢?【参考方案5】:

/etc/php5/cli/php.ini

【讨论】:

【参考方案6】:

windows 中的有趣之处在于,在两个测试中(在 apache 上使用 phpinfo() 和在 cli 中使用 php --ini),配置文件路径是 c:\windows。更多信息here

【讨论】:

【参考方案7】:

我遇到了同样的问题。只需检查 /etc/php5/conf.d/ 中每个文件的所有者和权限。它必须由 root 拥有并且任何人都可以读取。

【讨论】:

不,它只需要进程可读,所有者可以是任何人。至少在linux下。

以上是关于我在哪里可以找到 php-cli 的 php.ini的主要内容,如果未能解决你的问题,请参考以下文章

我在哪里可以找到所有参数的 mysql 配置文件?

我在哪里可以找到免费的天气图标? [关闭]

我在哪里可以找到 CommandTarget?

我在哪里可以找到模式的数据目标

我在哪里可以找到 XAMPP 中的 MySQL 日志文件

缺少 CustomImageLabelerOptions。我在哪里可以找到它?