我知道 /etc/php5/cli
中的 .ini 文件与 PHP 的 CLI 用法有关,/etc/php5/fpm
中的文件则与 PHP 的 FastCGI/FPM 方面有关,但位于 /etc/php5/conf.d
的 .ini 文件又是什么呢?
我知道 /etc/php5/cli
中的 .ini 文件与 PHP 的 CLI 用法有关,/etc/php5/fpm
中的文件则与 PHP 的 FastCGI/FPM 方面有关,但位于 /etc/php5/conf.d
的 .ini 文件又是什么呢?
这些文件将覆盖php.ini中的设置。在此处放置配置内容允许您拥有自定义设置,同时使更新更加简单:如果您修改php.ini本身,则必须保留旧的php.ini或在更新PHP时进行覆盖。如果您将自定义设置保存在例如conf.d/local.ini
中,则可以轻松更新PHP,同时保留任何特定于环境的设置。
(鸣谢此博客文章)
来自于安装有PHP的Ubuntu系统中的/usr/share/doc/php5-common/README.Debian.gz
文件:
此外,每个SAPI都配置了编译时选项
--with-config-file-scan-dir=/etc/php5/$SAPI/conf.d
对于所有的SAPI来说,/etc/php5/conf.d是一个指向中央目录的符号链接。在该目录下以.ini结尾的任何文件都将被php SAPI视为配置文件。
这种方法的原理是每个SAPI都可以通过最少的配置文件处理而被相同地配置,但同时如果您想要特定于SAPI的配置,只需删除符号链接即可。