基于CentOS 5.5 配置Nginx + php + spawn-fcgi

 一、安装准备

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  启动脚本
 

你可能感兴趣的:(nginx,centos,spawn-fcgi)