一、安装准备
1.平台环境:
CentOS 5.5 x86_64 GNU/Linux
Nginx 0.8.46
php-5.2.14
spawn-fcgi-1.6.3
MySQL 5.5.3-m3
2.下载相关软件包:
http://dev.mysql.com/get/Downloads/MySQL-5.5/mysql-5.5.3-m3.tar.gz/from/http://mysql.he.net/
http://sysoev.ru/nginx/nginx-0.8.46.tar.gz
http://www.php.net/get/php-5.2.14.tar.gz/from/this/mirror
http://php-fpm.org/downloads/php-5.2.14-fpm-0.5.14.diff.gz
http://www.lighttpd.net/download/spawn-fcgi-1.6.3.tar.gz
3.安装spawn-fcgi
解压 spawn-fcgi 直接 ./configure && make && make install
4.配置nginx
这里spawn-fcgi开启9001跟9002两个端口,利用nginx的upstream负载均衡php程序到不同的fcgi端口上面。
打开Nginx.conf文件. 在 第一个 server 上面添加
upstream backend {
server 127.0.0.1:9001;
server 127.0.0.1:9002;
}
然后将 每个server 下的 fastcgi_pass 改成
fastcgi_pass backend;
保存修改。 测试 Nginx.conf 是否有错误。用 netstat -n|grep 9001 和 grep 9002 测试 端口
是否有连接。
5.配置spawn-fcgi启动脚本
在 /usr/local/php/sbin 下创建 spawn-fcgi 脚本文件 内容如下;
#! /bin/sh
set -e
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
DESC="spawn-fcgi daemon"
NAME=spawn-fcgi
DAEMON=/usr/local/bin/$NAME
# Gracefully exit if the package has been removed.
test -x $DAEMON || exit 0
d_start() {
$DAEMON -a 127.0.0.1 -p 9001 -C 100 -u www -g www -f /usr/local/php/bin/php-cgi > /dev/null 2>&1
$DAEMON -a 127.0.0.1 -p 9002 -C 100 -u www -g www -f /usr/local/php/bin/php-cgi > /dev/null 2>&1 || echo -n " already running"
}
d_stop() {
/usr/bin/killall -9 php-cgi > /dev/null 2>&1 || echo -n " not running"
}
case "$1" in
start)
echo -n "Starting $DESC: $NAME"
d_start
echo "."
;;
stop)
echo -n "Stopping $DESC: $NAME"
d_stop
echo "."
;;
restart)
echo -n "Restarting $DESC: $NAME"
d_stop
sleep 1
d_start
echo "."
;;
*)
echo "Usage: $SCRIPTNAME {start|stop|restart}" >&2
exit 3
;;
esac
exit 0
然后给予755的权限 chmod 755 /usr/local/php/sbin/spawn-fcgi
/usr/local/php/sbin/spawn-fcgi start 启动脚本