PHP-FPM 是 一个PHP
FastCGI进程管理器
FastCGI是一个可伸缩的,高速地在web server和脚本语言间交互的接口。FastCGI的主要优点是把动态语言和web server分离开来。这种技术允许把web server和动态语言运行在不同的主机上,以大规模扩展和改进安全性而不损失生产效率。
php-fpm可以和任何支持远端FastCGI的web server工作
安装
php-5.2.13.tar.gz
php-5.2.13-fpm-0.5.14.diff.gz
tar zxvf php-5.2.13.tar.gz
gunzip php-5.2.13-fpm-0.5.14.diff.gz
patch -d php-5.2.13 -p1 < php-5.2.13-fpm-0.5.14.diff (给php源码打fpm补丁)
cd php-5.2.13
./configure --prefix=/usr/local/php --with-mysql=/usr/local/mysql --enable-fastcgi --enable-fpm --with-config-file-path=/usr/local/php/etc --enable-force-cgi-redirect
make && make install
检查安装的情况
cd /usr/local/php/bin
./php -v
PHP 5.2.13 (cli) (built: Nov 30 2010 16:59:45)
Copyright (c) 1997-2010 The PHP Group
Zend Engine v2.2.0, Copyright (c) 1998-2010 Zend Technologies
##出现上面的显示说明安装正常
cp /home/download/php-5.2.13/php.ini-dist /usr/local/php/etc/php.ini
vi /usr/local/php/etc/php-fpm.conf
去除下列两行的注释
<value name="user">nobody</value>
<value name="group">nobody</value>
启动php-fpm
/usr/local/php/sbin/php-fpm start
配置nginx(配置nginx见
安装配置整理之 nginx)
server {
listen 80;
server_name www.test.com;
root /home/htmlfile/test;
location ~ .*\.(php|php5)?$ {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /home/htmlfile/test$fastcgi_script_name;
include fastcgi_params;
}
location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$ {
expires 30d;
}
location ~ .*\.(js|css)?$ {
expires 1h;
}
#access_log /var/logs/access.log access;
}
## server部分为PHP虚拟主机127.0.0.1:9000为fastcgi的主机
重启nginx
在/home/htmlfile/test目录下新建test.php
内容为<?php phpinfo(); ?>
既通过www.test.com/test.php进行访问,出现php的信息页,则安装成功