LAMP编译介绍二、 php以fpm的方式结合apache工作
admin
2023-06-25 21:02:30
0

    上次介绍了有关php以模块的方式结合apache工作,这次介绍一下php以fpm的方式结合apache工作的过程!

编译安装LAMP,使用的操作系统为CentOS 6版本,ip地址:192.168.1.101;

httpd和mariadb,以及xcache为php加速的编译过程没有变化,跟上次介绍的过程一样,这里就不多做介绍了!

注:不知道编译过程的朋友请查看《LMAP编译介绍一》所讲内容!

下面开始主要介绍php的编译!!


php-5.4.40的编译

1、解决依赖关系

[root@localhost ~]# yum groupinstall -y "Development tools" "Server Platform Development"
[root@localhost php-5.4.40]# yum install -y libxml2-devel
[root@localhost php-5.4.40]# yum install bzip2-devel -y

[root@localhost ~]# yum localinstall libmcrypt-2.5.7-1.2.el6.rf.x86_64.rpm
[root@localhost ~]# yum localinstall libmcrypt-devel-2.5.7-1.2.el6.rf.x86_64.rpm


2、编译安装php-5.4.40

[root@localhost ~]# mkdir /etc/php5
[root@localhost ~]# mkdir /etc/php.d
[root@localhost ~]# cd php-5.4.40
[root@localhost php-5.4.40]# ./configure 
--prefix=/usr/local/php5                //指明安装目录
--with-mysql=/usr/local/mysql        //指明mysql安装目录
--with-openssl              //使用openssl
--with-mysqli=/usr/local/mysql/bin/mysql_config  //mysql的另一个接口
--enable-mbstring        //支持多字节字符串,多种语言使用
--with-freetype-dir       //一种字体格式目录
--with-jpeg-dir          //jpeg格式文件目录
--with-png-dir       //png格式文件目录
--with-zlib          //支持压缩
--with-libxml-dir=/usr        //xml的库目录
--enable-xml           //支持xml
--enable-sockets       //支持套接字
--enable-fpm       //重点:支持fpm
--with-mcrypt           //支持加密解密
--with-config-file-path=/etc/php5           //php配置文件目录
--with-config-file-scan-dir=/etc/php.d    //php的辅助配置文件目录
--with-bz2           //支持bz2压缩
[root@localhost php-5.4.40]# make -j 4
[root@localhost php-5.4.40]# make install
[root@localhost php-5.4.40]# cp php.ini-production /etc/php5/php.ini
[root@localhost php-5.4.40]# cp sapi/fpm/init.d.php-fpm /etc/rc.d/init.d/php-fpm
[root@localhost php-5.4.40]# chmod +x /etc/rc.d/init.d/php-fpm

[root@localhost php-5.4.40]# chkconfig --add php-fpm
[root@localhost php-5.4.40]# chkconfig php-fpm on
[root@localhost php-5.4.40]# chkconfig --list php-fpm

为php-fpm提供配置文件:
# cp /usr/local/php5/etc/php-fpm.conf.default /usr/local/php5/etc/php-fpm.conf 
编辑php-fpm的配置文件:
# vim /usr/local/php5/etc/php-fpm.conf
配置fpm的相关选项为你所需要的值,并启用pid文件(如下最后一行):
listen = 0.0.0.0:9000             //监听ip及端口
pm.max_children = 50        
pm.start_servers = 5
pm.min_spare_servers = 2
pm.max_spare_servers = 5
pid = /usr/local/php5/var/run/php-fpm.pid         

接下来就可以启动php-fpm了:
# service php-fpm start

LAMP编译介绍二、 php以fpm的方式结合apache工作

3、配置httpd-2.4

1、启用httpd的相关模块

在Apache httpd 2.4以后已经专门有一个模块针对FastCGI的实现,此模块为mod_proxy_fcgi.so,它其实是作为mod_proxy.so模块的扩充,因此,这两个模块都要加载

 # vim /etc/httpd24/httpd.conf

LoadModule proxy_module modules/mod_proxy.so         

LoadModule proxy_fcgi_module modules/mod_proxy_fcgi.so


 2、添加如下二行

   AddType application/x-httpd-php  .php

   AddType application/x-httpd-php-source  .phps


 3、定位至DirectoryIndex index.html 

   修改为:

    DirectoryIndex  index.php  index.html


4、配置支持使用fcgi

ProxyRequests Off    //关闭正向代理

ProxyPassMatch ^/(.*\.php)$ fcgi://127.0.0.1:9000/usr/local/apache/htdocs/$1 

//把以.php结尾的文件请求发送到php-fpm进程,php-fpm至少需要知道运行的目录和URI,所以这里直接在fcgi://127.0.0.1:9000后指明了这两个参数,其它的参数的传递已经被mod_proxy_fcgi.so进行了封装,不需要手动指定。


5、测试php是否已经可以以fpm的方式结合apache工作

LAMP编译介绍二、 php以fpm的方式结合apache工作

至此php以fpm方式结合apache工作介绍完毕!! 


相关内容

热门资讯

联合国安理会延长对南苏丹武器禁... △当地时间5月29日,安理会成员国在就南苏丹制裁授权延期决议草案进行表决。当地时间5月29日,联合国...
字节Seed AI4S或考虑分... 来源:市场资讯 (来源:三言科技) 5月29日,据Z Finance,字节Seed旗下AI4S团队正...
刷新在轨驻留最长纪录!神二十一... 自2025年11月1日进驻空间站以来,神舟二十一号乘组在轨驻留了约7个月,刷新中国航天员乘组在轨驻留...
广东荔枝迎采收季,无人机单机日... 5月底,岭南荔枝进入采收与上市关键期。南都湾财社记者获悉,以大疆为代表的农业无人机正大规模替代传统人...
伊媒:特朗普关于伊美协议的说法... 新华社德黑兰5月29日电 伊朗法尔斯通讯社29日以一名伊方知情人士为消息源,反驳美国总统特朗普关于美...
电视为什么一直闪屏 由于电源电压不稳定或电源供电不足的缘故、电视分辨率的故障、电视存在周围有电磁干扰的缘故、电视的刷新频...
专访塞尔维亚总统武契奇 塞尔维亚总统武契奇首次对中国进行国事访问,接受《高端访谈》专访。他说,这是他政治生涯中最重要的一次访...
大理宾川:六一儿童节前夕,警方... “大风在刮,大雪在下。烽火中拼杀,危难的关头热血护中华。不怕流血,不怕牺牲。只为守护家,先烈用生命换...
杀入固态电池赛道,5150 亿... 农夫山泉创始人、前中国首富钟睒睒,又有新动作! 近日,钟睒睒通过旗下养生堂战略投资固态电池材料企业智...
南京测试机器人楼宇外立面清洗,... 扬子晚报网5月29日讯(记者 张可)南京存量楼宇数量庞大、外立面日常养护、翻新清洁需求旺盛。长期以来...