zoukankan      html  css  js  c++  java
  • Centos安装php php-fpm 以及 配置nginx

    下载php源码包

    http://www.php.net/downloads.php

    安装php

    tar -xvf php-5.5.13.tar.bz2  
      
    cd php-5.5.13  
      
     ./configure --prefix=/usr/local/php --with-config-file-path=/etc --enable-inline-optimization --disable-debug --disable-rpath --enable-shared --enable-opcache --enable-fpm --with-fpm-user=www --with-fpm-group=www --with-mysql=mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-gettext --enable-mbstring --with-iconv --with-mcrypt --with-mhash --with-openssl --enable-bcmath --enable-soap --with-libxml-dir --enable-pcntl --enable-shmop --enable-sysvmsg --enable-sysvsem --enable-sysvshm --enable-sockets --with-curl --with-zlib --enable-zip --with-bz2 --with-readline --without-sqlite3 --without-pdo-sqlite --with-pear  

    可能出现的错误

    出现错误: congigure error: xml2-config not found

    解决办法:

    1.执行命令: 

    sudo yum install libxml2-devel  

    2.查看是否成功: 

    find / -name "xml2-config" 

    出现错误: congigure error: Cannot find OpenSSL's <evp.h>

    解决办法:

    yum install openssl openssl-devel  
    ln -s /usr/lib64/libssl.so /usr/lib/ 

    出现错误: configure: error: Please reinstall the BZip2 distribution

    解决办法:

    yum install bzip2 bzip2-devel  

    出现错误: configure: error: Please reinstall the libcurl distribution -easy.h should be in <curl-dir>/include/curl/

    解决办法:

    yum -y install curl-devel
     

     出现错误:configure: error: mcrypt.h not found. Please reinstall libmcrypt.

    解决办法:

    sudo yum install libmcrypt libmcrypt-devel mcrypt mhash

    出现错误:configure: error: Please reinstall readline - I cannot find readline.h

    解决办法:

    sudo yum install readline-devel

    编译

    make   
    make install  

    可能出现的错误

    编译PHP5.5 make 时出现错误

    make: *** [ext/fileinfo/libmagic/apprentice.lo] Error 1

    解决办法:
    这是由于内存小于1G所导致.Disable fileinfo support 禁用 fileinfo

    在./configure加上选项:

    --disable-fileinfo      

    配置环境变量

    添加 PHP 命令到环境变量

    vim /etc/profile 

    在末尾加入

    PATH=$PATH:/usr/local/php/bin  
    export PATH  

    要使改动立即生效执行

    . /etc/profile 或 source /etc/profile

    查看环境变量

    echo $PATH   

    查看php版本

    php -v

    PHP 5.5.13 (cli) (built: Jun 20 2014 11:11:26) 
    Copyright (c) 1997-2014 The PHP Group
    Zend Engine v2.5.0, Copyright (c) 1998-2014 Zend Technologies

    配置启动php-fpm

    cd /usr/local/php/etc  
    cp php-fpm.conf.default php-fpm.conf 

    启动php-fpm

    sudo /usr/local/php/sbin/php-fpm  

    配置nginx

    修改nginx的配置文件(/etc/nginx/conf.d/default.conf)

    location / {  
      
    root web根目录;//在服务器中的目录  
      
    index index.html index.htm index.php;  
      
    }  
      
    location ~ .php$ {  
      
    root html;  
      
    fastcgi_pass 127.0.0.1:9000; //这个iP和端口对应php-fpm设置的端口  
      
    fastcgi_index index.php;  
      
    fastcgi_param SCRIPT_FILENAME web根目录$fastcgi_script_name;  
      
    include fastcgi_params;  
      
    }  

    检查nginx

    [root@server nginx]# ./sbin/nginx -t //检测配置文件是否正常  
    nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok 
    nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful

    则 已经配置正确

     
     

    重启nginx

    /etc/init.d/nginx restart 

    在web根目录下创建index.php

    <?php echo phpinfo(); ?>

    在浏览器中输入http://ip/index.php查看成功即可。

    //注:根据自己的配置修改web根目录即可,如我的为/usr/share/nginx/html。

    如果启动php-fpm出现错误: can not get uid for www,修改php-fpm.conf中user为nginx group为nginx

  • 相关阅读:
    01 网络基础
    01 ansible的基本介绍
    10 面向对象的编程
    03 docker容器镜像基础
    09 异常处理
    08 输入输出
    07 数据结构
    02 docker的基本用法
    01 docker容器技术基础入门
    06 字符串
  • 原文地址:https://www.cnblogs.com/felixzh/p/8822762.html
Copyright © 2011-2022 走看看