正确编译安装PHP 5.3.10,使用PHP-FPM 管理 fastcgi。
yum -y install libxml2 libxml2-devel //编译PHP时,需要该库的支持
wget http://www.php.net/get/php-5.3.10.tar.gz/from/us.php.net/mirror
tar zxvf php-5.3.10.tar.gz
cd php-5.3.10
wget http://php-fpm.org/downloads/php-5.2.9-fpm-0.5.10-unofficial.diff.gz //获取与PHP版本对应的php-fpm补丁
gzip -cd php-5.2.9-fpm-0.5.10-unofficial.diff.gz | patch -d php-5.3.10 -p1 //给PHP打好补丁php-fpm
./configure --prefix=/usr/local/php --enable-fpm //激活fastcgi模式的FPM支持
make
make install
默认安装 完成后
1、将PHP可执行程序放到 /usr/bin/ 目录下。
cp /usr/local/php/bin/php /usr/bin/
2、在PHP的源码目录下 php-5.3.10,将 php.ini-development 改名复制到 /etc/ 目录下。
cp php.ini-development /etc/php.ini
3、在
/usr/local/php/etc 文件夹下边会有
php-fpm.conf.default这个配置文件。
cp php-fpm.conf.default php-fpm.conf
4、编辑文件
php-fpm.conf :
pid = run/php-fpm.pid //开启此配置
5、在PHP的源码目录下
php-5.3.10,将
php-fpm 复制到启动目录。
cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
chmod +x /etc/init.d/php-fpm //赋予可执行权限
6、启动
php-fpm/etc/init.d/php-fpm start //启动php-fpm
/sbin/chkconfig php-fpm on //开机自启动
7、CLI模式下调试脚本
php -r 'echo 1;'
输出:1 // 成功
====================================================== 淫荡的分界线 =============================================================
下面说说按照官网文档进行安装的问题。
如果希望PHP 以 fastcgi 方式被安装,PHP官网的手册 写道:
--enable-fastcgi 如果启用,CGI 模块将被编译为支持 FastCGI。PHP 4.3.0 之后的版本有效。
执行编译
./configure --prefix=/usr/local/php --enable-fastcgi
执行结果
Notice: Following unknown configure options were used:
--enable-fastcgi
Check './configure --help' for available options
Google 得知:As of PHP 5.3.0, the CGI module is now always FastCGI; there is no "normal" CGI anymore.
也就是说,从PHP 5.3 开始,默认支持 fastcgi 了,不用再去写命令 --enable-fastcgi,PHP官网文档的描述有误,没改正过来!
另外,如果需要安装 fpm:fastcgi process manager, FastCGI 进程管理器,需要在编译时,加入命令:--enable-fpm
FPM 用于替换PHP FastCGI 的大部分附加功能,对于高负载网站是非常有用的。