如何更改其他 php.ini 文件的路径



如果我运行php --ini,那么我会收到以下警告。

Cannot load Xdebug - it was already loaded
PHP Warning:  Module 'memcached' already loaded in Unknown on line 0
....
Configuration File (php.ini) Path: /opt/Qapache/etc
Loaded Configuration File:         /opt/Qapache/etc/php.ini
Scan for additional .ini files in: /opt/Qapache/etc
Additional .ini files parsed:      /opt/Qapache/etc/php.ini

是的,我运行 Qnap NAS。 如果我注释掉 php 中的模块.ini就像这里一样,它们将不再加载。

所以我的想法是,php.ini 文件按"扫描其他.ini文件:"的路径加载两次。

我知道我可以用以下命令覆盖 php 执行php -c /PATH/TO/php.ini -n所以它看起来像这样。

Configuration File (php.ini) Path: /opt/Qapache/etc
Loaded Configuration File:         /PATH/TO/php.ini
Scan for additional .ini files in: (none)
Additional .ini files parsed:      (none)

这行得通,没有一个模块已经加载。

但这并不持久,我不想每次都使用它的选项。 那么,我如何更改一般Scan for additional .ini files in:的路径?

提前谢谢。

该目录是在使用自定义标志从源代码编译 PHP 时定义的--with-config-file-scan-dir: https://www.php.net/manual/en/configure.about.php#configure.options.php

您可以在运行时通过设置文档中定义的名为PHP_INI_SCAN_DIR的 ENV var 来更改它: https://www.php.net/manual/en/configuration.file.php#configuration.file.scan

最新更新