php5.6源码安装及php-fpm配置与nginx集成

LNMP环境的搭建中,现在只有php没有源码安装过。这篇文章就把这个介绍下。

注意本篇文章使用的centos 6.5 64bit。

登陆centos下载php5.6的安装包。php的软件包可以去国内的souhu镜像站点去下载。

wget http://mirrors.sohu.com/php/php-5.6.2.tar.gz

在安装之前,我们需要安装php5.6编译时所依赖的软件包。如下:

yum -y install gcc gcc-c++ libxml2 libxml2-devel

以上软件包安装完毕后,我们现在来解压刚刚下载的php5.6源码包。使用如下命令:

tar -xf php-5.6.2.tar.gz

进入php5.6的解压目录,现在开始配置php5.6,使用如下命令:

cd php-5.6.2

./configure –enable-fpm –enable-mbstring –with-mysql=/usr/local/mysql

如果没有错误的情况下,配置完毕后。系统会出现如下的提示信息:

注意上述命令中–enable-fpm的作用是开启php的fastcgi功能即开启php-fpm功能,–with-mysql=/usr/local/mysql是启用php支持mysql的功能,/usr/local/mysql是mysql数据库的安装路径。

–enable-mbstring表示启用mbstring模块mbstring模块的主要作用在于检测和转换编码,提供对应的多字节操作的字符串函数。目前php内部的编码只支持ISO-8859-*、EUC-JP、UTF-8,其他的编码的语言是没办法在php程序上正确显示的,所以我们要启用mbstring模块。

同时我们也只是简单的开启和扩展php的一部分功能,其他需要的功能,请自行添加。

配置完毕后,我们现在来编译php,使用make命令,如下:

make

php编译的时间比较长,根据机器的性能不同需要等待10-20分钟左右。编译完毕后的截图,如下:

编译完毕后,我们现在开始安装php,使用如下命令:

make install

安装完毕后,我们可以通过php –v命令查看是否安装成功。如下:

php –v

通过这样安装完毕后,你会发现在/usr/local/lib目录下没有php.ini文件。在这我们就先复制php安装文件提供的模版,如下:

cp php.ini-production /usr/local/lib/php.ini

注意php.ini文件一般在/usr/local/lib/和/etc目录下。有关php安装完毕后,没有php.ini文件的,我们再另外一篇文章再介绍。

不要以为到这php的安装就完毕了,LNMP环境中的nginx是不支持php的,需要通过fastcgi来处理有关php的请求。而php需要php-fpm这个组件来支持。

在php5.3.3以前的版本php-fpm是以一个补丁包的形式存在的,而php5.3.3以后的php-fpm只需要在安装php-fpm开启这个功能即可。这个也就是前边,我们再配置php使用到的那个命令–enable-fpm。

php-fpm功能开启后,我们还需要配置php-fpm。其实php-fpm的配置文件在安装php时,已经为我们提供了一个配置文件的模版。该模版为/usr/local/etc/php-fpm.conf.default,如下:

more /usr/local/etc/php-fpm.conf.default

我们现在只需要复制一份该文件,并重命名为php-fpm.conf,如下:

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

为了让php-fpm已服务的形式启动。我们需要复制php安装目录下/sapi/fpm/init.d.php-fpm文件。如下:

cp ./sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm

通过上图,我们也可以很清楚的看到php-fpm文件目前没有执行权限。赋予php-fpm执行权限,并启动php-fpm,如下:

chmod a+x /etc/init.d/php-fpm

/etc/init.d/php-fpm start

netstat -tunlp |grep 9000

通过上图,我们可以很明显的看到php-fpm已经正常启动。

注意php-fpm默认监听的是9000端口。

现在再来配置nginx,使其支持php,如下:

location ~ \.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;

}

然后在nginx的网站根目录下新建index.php文件内容如下:

vi /usr/local/nginx/html/index.php

<?php phpinfo(); ?>

现在来启动nginx,如下:

/usr/local/nginx/sbin/nginx

netstat -tunlp |grep 80

nginx启动完毕后,现在来访问网站,如下:

通过上图,我们可以很明显的看到。php目前已经安装成功,并且也成功的支持mysql数据库。同时也与nginx集成完毕。

至此。我们的php5.6的安装到此结束。

时间: 2025-01-06 23:51:22

php5.6源码安装及php-fpm配置与nginx集成的相关文章

php5.6源码安装与apache集成

apache对php的支持是通过apache的mod_php5模块来支持的,这点与nginx不同.nginx是通过第三方的fastcgi处理器才可以对php进行解析,有关nginx与php集成,请看<烂泥:php5.6源码安装及php-fpm配置与nginx集成>. 如果源码编译安装php的话,需要在编译时指定–with-apxs2=/usr/local/apache2/bin/apxs表示告诉编译器通过apache的mod_php5模块来提供对php的解析. 同时php安装的最后一步make

Linux下最新版php5.6源码安装与apache/nginx集成教程

apache对php的支持是通过apache的mod_php5模块来支持的,这点与nginx不同.nginx是通过第三方的fastcgi处理器才可以对php进行解析. 如果源码编译安装php的话,需要在编译时指定--with-apxs2=/usr/local/apache2/bin/apxs表示告诉编译器通过apache的mod_php5模块来提供对php的解析. 同时php安装的最后一步make install时,我们会看到将动态链接库libphp5.so拷贝到apache2的安装目录的mod

Nginx源码安装及调优配置

由于Nginx本身的一些优点,轻量,开源,易用,越来越多的公司使用nginx作为自己公司的web应用服务器,本文详细介绍nginx源码安装的同时并对nginx进行优化配置. Nginx编译前的优化 [root@linuxprobe ~]# wget http://nginx.org/download/nginx-1.10.1.tar.gz [root@linuxprobe ~]# tar xvf nginx-1.10.1.tar.gz -C /usr/local/src/ [root@linux

详解lamp源码安装及phpwind的配置方案

前面有一篇是写使用rpm包搭建lamp环境的,那种方法安装方便,是非常容易就能上手的,但是由于rpm包的更新是需要一段很长时间的,所以如果想要安装比较新的包,最好的方法是源码安装. 一般的源码包放在/usr/local/下,mysql,apache源码包均解压放在其下,php放在/usr/local/src/下 安装的大概步骤: 一.先要使用yum下面四个包安装(最好使用组安装) 例如:yum groupinstall "development tools" –y a.  Develo

Linux下MySQL-5.6的源码安装

本文主要介绍centos下源码安装MySQL 5.6的方法,centos的版本为5.8. 1)首先,你需要到MySQL官网下载源码tar包,点击MySQL Community Server,选择Source Code,源码包不大,只有 34M左右. 注:以下操作没有特殊说明,都是以root账户执行. 2)先安装cmake(mysql5.5以后源码安装都得通过cmake编译) # yum install cmake 并确保以下两个包已安装最新版: ncurses ncurses-devel 3)添

Centos 下源码安装配置Nginx +PHP + fastcgi+mysql+MemCached

编译工具包是少不了的先搞起吧 yum -y install gcc gcc-c++ libxml2 libxml2-devel autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel  zlib zlib-devel glibc glibc-devel glib2 glib2-devel ./configure: error: the HTTP rewrite module requires the P

Linux+Nginx+MySql+Php既LNMP源码安装

我们都知道Apache作为一款出色的web服务器占据了市场大半个江山,他的地位目前还无人能取代,但是除了Apache,,在web服务器软件行列,Nginx以其性能稳定.功能丰富.运维简单.处理静静态文件速度快且消耗系统资源极少的优势,也同样赢得了许多人的青睐. 下面让我们能来了解一下linux下Nginx+mysql+php的源码安装方法. 准备工具: mysql-5.5.15-linux2.6-i686.tar.gz nginx-1.0.11.tar.gz pcre-devel-6.6-2.e

lnmp环境配置之编译源码安装PHP的方法

我们使用vagrant建立虚拟环境,这里使用"chef/centos-6.5"这个box,这个box是一个比较纯净的CentOS-6.5系统. 关于Vagrant如何使用,请参考Vagrant快速入门. $ vagrant init chef/centos-6.5 $ vagrant up 执行上述命令之后,就已经建立了一个centos-6.5的虚拟机并且启动了,这时我们使用命令ssh连接到虚拟机. $ vagrant ssh 提示符变成了[vagrant@localhost ~]$

大众软件-rpm源码安装中nss,nspr

问题描述 rpm源码安装中nss,nspr rpm软件管理器源码安装所需要的配置文件有哪些,如nss,nspr.怎么安装,下载下来了 完全不知道怎么办