php - 如何更改其他 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
推荐阅读
- javascript - Accelerated Mobile Pages (AMP) - External script
- javascript - How to load external .js to the body of a Wordpress Page?
- php - Redirect URLs ending with .php to new URL in Laravel & Nginx
- database - What are the disadvantages/advantages of having a container for each document type in cosmosdb?
- python - Ansible LookupPlugin: Change variables from plugin
- curl - Jira API 调用中的 JQL 查询失败
- kivy - Kivy,Buildozer 安装在未连接的设备上
- android - ZonedDateTime.toInstant().toEpochMilli() 丢失区域数据
- reactjs - Change ReactTable heading color using css-modules
- python - 带条件的笛卡尔积