如果我运行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