在php-5.2.17以前的版本中,php-fpm是作为一个补丁的,新的php版本已经把php-fpm整合了。

问题:php-fpm无法加载php.ini配置

php version:5.2.6

在测试时phpinfo()显示的信息:

Configuration File (php.ini) Path/usr/local/php-5.2.6/lib
Loaded Configuration File(none)


也就是说php.ini默认加载位置是/usr/local/php-5.2.6/lib,而我把php.ini放在了/usr/local/php-5.2.6/etc下,所以加载不到。


解决方法:

1、把php.ini移动到/usr/local/php-5.2.6/lib下,重启nginx和php-fpm

2、在编译时添加编译参数--with-config-file-path=/usr/local/php-5.2.6/etc/php.ini


php.ini和php-fpm.conf

php.ini:决定php语言运行的环境,支持扩展的模块,开发环境的配置

php-fpm.conf:进程控制管理器配置文件,控制php-cgi的进程数,常驻内存,提高web服务的响应速率,php-cgi运行时会加载这两个配置文件。


关于cgi fastcgi php-fpm的讲解:

http://www.mike.org.cn/articles/what-is-cgi-fastcgi-php-fpm-spawn-fcgi/