Nginx系列笔记-PHP环境安装

本章的PHP环境安装以Ecshop商城为PHP安装演示案例;

#先下载PHP

cd /usr/local/

wget http://cn2.php.net/distributions/php-5.6.15.tar.gz

tar -zxvf php-5.6.15.tar.gz
      cd php-5.6.15

注意: 我们编译的PHP 要有如下功能:

      ./configure -help|grep gd 检查是否支持;

连接mysql, gd, ttf, 以fpm(fascgi)方式运行

      ./configure –prefix=/usr/local/php –with-mysql=mysqlnd –enable-mysqlnd –with-gd –enable-gd-native-ttf –enable-gd-jis-conv –enable-fpm

安装过程中遇到问题:

blob.png

需要安装libxml2-devel,再次执行安装命令:

    1.   yum install libxml2* -y  

安装PHP的时候提示这个错误 configure: error: png.h not found.,这个是选择安装GD模块才会出现的错误,详细错误信息如下

blob.png

     yum install gd-devel

补充,因为不同的操作系统环境,系统安装开发环境包的完整程度也不相同,所以建议安装操作系统的时候做必要选择,也可以统一执行一遍所有的命令,将没有安装的组件安装好,如果已经安装了可能会进行升级,版本完全一致则不会进行任何操作,命令除上面2个之外,汇总如下:

yum -y install openssl

yum -y install openssl-devel

yum -y install curl

yum -y install curl-devel

yum -y install libjpeg

yum -y install libjpeg-devel

yum -y install libpng

yum -y install libpng-devel

yum -y install freetype

yum -y install freetype-devel

yum -y install pcre

yum -y install pcre-devel

yum -y install libxslt

yum -y install libxslt-devel

blob.png

安装成功;

然后执行编译安装:

make
make install

编译完毕后:

   把配置php.ini,只需要把php-5.6.15安装包中的php.ini- development拷贝到/usr/local/php/lib/下即可。

  cp /opt/php-5.6.15/php.ini-development /usr/local/php/php.ini
   cp /usr/local/php/etc/php-fpm.conf.default  /usr/local/php/etc/php-fpm.conf

执行:

    [root@localhost php]# ./sbin/php-fpm

查看PHP进程:

   [root@localhost php]# ps -aux |grep php

停止PHP进程:

   [root@localhost php]# kill -9 php-fpm

Nginx+PHP环境配置:

 nginx+php的配置比较简单,核心就一句话—-

把请求的信息转发给9000端口的PHP进程,

让PHP进程处理 指定目录下的PHP文件. 

如下例子:

location ~ \.php$ {

index  index.php;

root           html;

fastcgi_pass   127.0.0.1:9000;

fastcgi_index  index.php;

fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;

include        fastcgi_params;

}

 1:碰到php文件,

 2: 把根目录定位到 html,

 3: 把请求上下文转交给9000端口PHP进程,

 4: 并告诉PHP进程,当前的脚本是 $document_root$fastcgi_scriptname

(注:PHP会去找这个脚本并处理,所以脚本的位置要指对)

 

接下来编辑一个测试的php程序,在nginx下的html目录下创建test.php文件,打印一下php配置:

<?php

    phpinfo();

?>

blob.png

安装Ecshop,

wget http://download.ecshop.com/2.7.3/ECShop_V2.7.3_UTF8_release1106.rar 

具体安装度娘,其实准备好上阶段的工作、安装好Mysql后,就是把Ecshop目录文件是放置Nginx根目录下;

     cp /usr/local/nginx/html/ecshop

Nginx.conf配置:

location /ecshop {

     index index.php;

}

发表评论