Chinaunix首页 | 论坛 | 博客
  • 博客访问: 694400
  • 博文数量: 148
  • 博客积分: 4086
  • 博客等级: 上校
  • 技术积分: 1766
  • 用 户 组: 普通用户
  • 注册时间: 2009-12-06 23:27
文章分类

全部博文(148)

文章存档

2013年(19)

2012年(9)

2011年(106)

2009年(14)

分类: LINUX

2011-02-23 14:25:33

手动配置nginx+php-cgi+zend+mysql

本文适合CentOS。一步一步来,不要错。

先下载工具ssh shell,个人感觉这个比较好用,推荐给大家

SSHSecureShellClient93.2.9.zip

然后是一些必要的软件包
nginx源码包:
php源码包:
php-fpm补丁:

一.准备工作
1.ssh 登录到VPS,当前目录是 /root, 不要动。
2.用wget命令下载上述软件包

  • wget 
  • wget 
  • wget 
  • wget
    wget
    wget

    3.安装一些必要的系统软件包,这些都是必须的包,他们的功能请大家自己百度,百度不到就谷歌,谷歌不到再提问

     
  • yum install gcc
      
  • yum install patch
      
  • yum install pcre-devel.i386
      
  • yum install openssl-devel.i386
      
  • yum install libxml2-devel.i386
      
  • yum install libjpeg-devel.i386
      
  • yum install libpng-devel.i386
      
  • yum install mysql-devel.i386  
  • yum install gcc
    yum install patch
    yum install pcre-devel.i386
    yum install openssl-devel.i386
    yum install libxml2-devel.i386
    yum install libjpeg-devel.i386
    yum install libpng-devel.i386
    yum install mysql-devel.i386

    二.安装nginx
    1.先看看自己在哪个目录里面

     
  • pwd  
  • pwd

    确定当前目录是:
    /root
    不是的话

     
  • cd /root  
  • cd /root

    2.解压nginx

     
  • tar zxvf nginx-0.7.65.tar.gz  
  • tar zxvf nginx-0.7.65.tar.gz

    3.进入nginx源码目录

     
  • cd nginx-0.7.65  
  • cd nginx-0.7.65

    4.配置nginx编译文件

     
  • ./configure  –prefix=/usr/local/nginx  
  • ./configure --prefix=/usr/local/nginx

    5.编译并安装nginx

     
  • make && make install  
  • make && make install

    nginx的安装目录被设置在 =/usr/local/nginx

    6.运行nginx

     
  • /usr/local/nginx/sbin/nginx  
  • /usr/local/nginx/sbin/nginx

    nginx 安装初步完成,此时可以用 ip 访问到欢迎界面。

    三. 给php打上php-fmp补丁,并安装php
    1.返回 /root

     
  • cd /root  
  • cd /root

    2.解压php-fpm 和 php 源码包

  • gunzip php-5.2.11-fpm-0.5.13.diff.gz
      
  • tar zxvf php-5.2.11.tar.gz  
  • gunzip php-5.2.11-fpm-0.5.13.diff.gz
    tar zxvf php-5.2.11.tar.gz

    3.打补丁

  • patch -d php-5.2.11 -p1 < php-5.2.11-fpm-0.5.13.diff  
  • patch -d php-5.2.11 -p1 < php-5.2.11-fpm-0.5.13.diff

    4.进入 php 源文件目录

  • cd php-5.2.11  
  • cd php-5.2.11

    5.配置 php 编译文件

  • ./configure   –prefix=/usr/local/php –enable-fastcgi –enable-fpm –enable-magic-quotes –enable-libxml –enable-ftp –with-gd –with-jpeg-dir=/usr/lib –with-png-dir=/usr/lib –with-zlib-dir=/usr/lib –with-mysql –enable-zip –enable-zend-multibyte  
  • ./configure --prefix=/usr/local/php --enable-fastcgi --enable-fpm --enable-magic-quotes --enable-libxml --enable-ftp --with-gd --with-jpeg-dir=/usr/lib --with-png-dir=/usr/lib --with-zlib-dir=/usr/lib --with-mysql --enable-zip --enable-zend-multibyte

    6.编译 php

  • make && make install  
  • make && make install

    php的被安装在 /usr/local/php

    7.修改 /usr/local/php/etc/php-fpm.conf, 修改62~66行

  • Unix user of processes
      
  •                         nobody                                
      
  •  
      
  •                         Unix group of processes
      
  •                         nobody  
  • Unix user of processes
    nobody

    Unix group of processes
    nobody

    修改79行

  • 5  
  • 5

    如果是运行dede这类生成静态文件的cms,默认参数即可,如果运行discuz, 在burst#1上建议开到40左右。
    保存,回传。
     

    8.运行 php-cgi

  • /usr/local/php/sbin/php-fpm start  
  • /usr/local/php/sbin/php-fpm start

    三. 整合 nginx 和 php-cgi
    用ssh 的 sftp 功能(跟flashfxp很像),把 /usr/local/nginx/conf/nginx.conf 拉到本地电脑上,用 notepad++(推荐) 或 editplus 编辑
    1.找到 server 片段

  • server {
      
  •               ……
      
  •           }  
  • server {
    ......
    }

    2.server_name 的参数修改成自己的域名

  • server_name  ;  
  • server_name

    3.root 改成自己要绑定的目录,index指明哪些文件作为首页

  • location / {
      
  •   root   /usr/www;
      
  •   index  index.html index.htm index.php;
      
  • location / {
    root /usr/www;
    index index.html index.htm index.php;
    }

    下面是php-cgi的连接配置,root跟上面的一样, fastcgi_pass,fastcgi_index,include 都默认,要改的是 fastcgi_param,参照下面

  •  location ~ \.php$ {
      
  •    root           /usr/www;
      
  •    fastcgi_pass   127.0.0.1:9000;
      
  •    fastcgi_index  index.php;
      
  •    fastcgi_param  SCRIPT_FILENAME  $document_root/$fastcgi_script_name;
      
  •    include        fastcgi_params;
      
  • }  
  • location ~ \.php$ {
    root /usr/www;
    fastcgi_pass 127.0.0.1:9000;
    fastcgi_index index.php;
    fastcgi_param SCRIPT_FILENAME $document_root/$fastcgi_script_name;
    include fastcgi_params;
    }

    修改完,保存,回传。
    重启nginx

  • killall nginx
      
  • /usr/local/nginx/sbin/nginx  
  • killall nginx
    /usr/local/nginx/sbin/nginx

    五.给 php 加上 zend
    1.回到 /root

  • cd /root  
  • cd /root

    2.下载 zend 模块

  • wget 
  • wget

    3.把它移动到它该去得地方

  • mv ZendOptimizer.so /usr/local/php/lib/  
  • mv ZendOptimizer.so /usr/local/php/lib/

    4.编辑/usr/local/php/lib/php.ini,在末尾加上

  • zend_extension=/usr/local/php/lib/ZendOptimizer.so  
  • zend_extension=/usr/local/php/lib/ZendOptimizer.so

    5.重启 php-cgi

  • /usr/local/php/sbin/php-fpm restart  
  • /usr/local/php/sbin/php-fpm restart

    六.安装myql
    1.安装

  • yum install mysql-server  
  • yum install mysql-server

    2.启动

  • /etc/init.d/mysqld start  
  • /etc/init.d/mysqld start

    密码为空,记得自己修改Mysql的密码。

    阅读(928) | 评论(0) | 转发(0) |
    给主人留下些什么吧!~~