`

centos的nginx+php的fastcgi模式编译安装

 
阅读更多

一、nginx的安装查看“centos的nginx安装”博客

 

二、php安装

 

1.php5.3版本以后已经将php-fpm作为php的源码了,不需再再编译时候包含

2.php5以后的版本在编译时不再需要添加--enable-fastcgi 的选项,php默认开启

3.需要先安装libxml2和libxml2-devel,通过yum或者源码安装都可:

  tar zxvf libxml2-2.7.2.tar.gz

  cd libxml2-2.7.2

  ./configure --prefix=/usr/local/libxml2

  make && make install

 

  yum install libxml2-devel

 

4. php的编译安装:

解压进入php源码目录:

./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php --enable-fpm --with-mysql --with-pdo-mysql --enable-opcache  --enable-maintainer-zts

加粗选项是必须的,其中--with-config-file-path指定了php配置文件的目录,安装后需要从源码中复制一份到该目录(如果需要用到php的pthreads扩展,红色的配置项必须加上,因为zts只能再编译php时候才能创建,编译后无法)

 

make

make install

cp php.ini-development  /usr/local/php/php.ini

 

5. php-fpm的管理没有任何参数,表示使用默认的php-fpm配置文件和默认的php.ini文件

安装后php-fpm目录在/usr/local/php/sbin/

启动php-fpm: 

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

(注意/usr/local/php/etc/中是否有php-fpm.conf配置文件,如果没有就用php-fpm.conf.default复制一份)

 

使用指定的php.ini文件和php-fpm配置文件来启动:

/usr/local/php/sbin/php-fpm -c php.ini文件路径 -y php-fpm配置文的路径

 

 

测试php-fpm:

/usr/local/php/sbin/php-fpm -t

使用指定的php.ini文件和php-fpm配置文件来测试

/usr/local/php/sbin/php-fpm -c php.ini文件路径 -y php-fpm配置文的路径 -t

 

 

 

然后修改该配置文件中的;pid = run/php-fpm.pid,去掉前面的分号

以后重启php-fpm就使用kill php-fpm.pid的方法:(原理是kill掉php-fpm的master的进程id

重启:kill -SIGUSR2  `cat /usr/local/php/var/run/php-fpm.pid`

停止:kill -SIGINT  `cat /usr/local/php/var/run/php-fpm.pid`

 

三、nginx连接php的配置设置具体查看附件的“虚拟主机”配置文件(phpcms.conf)

 

 

 

 

分享到:
评论

相关推荐

    nginx FastCGI错误Primary script unknown解决办法

    在centos上成功编译安装nginx 1.4、php 5.4并成功启动nginx和php-fpm后,访问php提示”File not found.”,同时在错误日志中看到: 代码如下:2013/10/22 20:05:49 [error] 12691#0: *6 FastCGI sent in stderr: ...

    一键搭建个人博客系统脚本,基于完全编译lnmp(linux,nginx,mysql,php)搭建wordpress博客系统

    基于完全编译lnmp(linux,nginx,mysql,php)搭建wordpress博客系统,同时使用fastcgi利用 LNMP 实现WordPress站点搭建,在搭建过程中需要使用PowerTools库,要记得打开,否则会报错,这个脚本,我在云服务器...

    php-7.0.27.tar.gz

    编译 ./configure --prefix=/usr/local/php --exec-prefix=/usr/local/php --bindir=/usr/local/php/bin --sbindir=/usr/local/php/sbin --includedir=/usr/local/php/include --libdir=/usr/local/php/lib/php --...

    php-7.3.7.tar.gz

    编译 ./configure --prefix=/usr/local/php --exec-prefix=/usr/local/php --bindir=/usr/local/php/bin --sbindir=/usr/local/php/sbin --includedir=/usr/local/php/include --libdir=/usr/local/php/lib/php --...

    php-7.2.20.tar.gz

    编译 ./configure --prefix=/usr/local/php --exec-prefix=/usr/local/php --bindir=/usr/local/php/bin --sbindir=/usr/local/php/sbin --includedir=/usr/local/php/include --libdir=/usr/local/php/lib/php --...

    php-5.6.29.tar.gz

    编译 ./configure --prefix=/usr/local/php --exec-prefix=/usr/local/php --bindir=/usr/local/php/bin --sbindir=/usr/local/php/sbin --includedir=/usr/local/php/include --libdir=/usr/local/php/lib/php --...

    php-7.3.0.tar.gz

    off_t 类型是在 头文件 unistd.h中定义的,在32位系统 编程成 long int ,64位系统则编译成 long long int ,这里题主的系统应该是 64位的吧,在进行编译的时候 是默认查找64位的动态链接库,但是默认情况下 centos ...

    php-7.1.29.tar.gz

    编译 ./configure --prefix=/usr/local/php --exec-prefix=/usr/local/php --bindir=/usr/local/php/bin --sbindir=/usr/local/php/sbin --includedir=/usr/local/php/include --libdir=/usr/local/php/lib/php --...

Global site tag (gtag.js) - Google Analytics