【问题标题】:PHP ignores its php.ini in WindowsPHP 在 Windows 中忽略它的 php.ini
【发布时间】:2015-11-24 17:08:01
【问题描述】:

我在我的 Windows 主机系统上使用PHP 来表示composer。在尝试将 parse/php-sdk 添加到项目失败后(因为 SDK 需要启用 PHP cURL 模块),我更新了 PHP 设置。但这并没有解决问题。然后我检查了php.ini的设置是否正确:

C:\Users\me>php --info | grep "extension_dir"
extension_dir => ext => ext
C:\Users\me>php --info | grep "php.ini"
Configuration File (php.ini) Path => C:\Windows
Loaded Configuration File => C:\Program Files\php-5.6.8-Win32-VC11-x64\php.ini

是的,他们是。没有C:\Windows\php.ini,但没关系——C:\Program Files\php-5.6.8-Win32-VC11-x64\php.ini 是我更新并加载的文件。

然后我打印了模块列表 (php --modules) 并注意到它与加载的 php.ini 中的扩展设置没有任何共同之处。我还尝试更改其他设置(例如 memory_limit),但 PHP 似乎忽略了我的 php.ini 并从其他地方加载配置。

如何检测这个神奇的“某处”(意味着:PHP 实际从哪里加载其设置)以及如何让它从定义的文件中加载所需的设置?

【问题讨论】:

标签: php windows settings php-ini


【解决方案1】:

问题是由以下事实引起的,即 php.ini 正在由未以提升权限运行的编辑器进行编辑。如果 PHP 文件夹位于“程序文件”中,您必须以管理员权限访问其中的文件。 我发现了一个令人难以置信的事实,即使编辑器正确显示了更改,即使关闭/打开,更改也没有保存到 php.ini 中! 这可以通过检查 php.ini 内容来简单地验证 - 从命令行运行 more "C:\Program Files\... ...\php.ini"

解决方案很明显 - 您必须以提升的权限运行编辑器,或者使用 php.ini 授予用户对文件夹的权限,然后对其进行编辑。

【讨论】:

    猜你喜欢
    • 2013-04-04
    • 1970-01-01
    • 1970-01-01
    • 2017-06-04
    • 2012-06-28
    • 1970-01-01
    • 1970-01-01
    • 2011-06-09
    • 1970-01-01
    相关资源
    最近更新 更多