LAMP编译介绍二、 php以fpm的方式结合apache工作
2015-09-23 18:34
996 查看
上次介绍了有关php以模块的方式结合apache工作,这次介绍一下php以fpm的方式结合apache工作的过程!
编译安装LAMP,使用的操作系统为CentOS 6版本,ip地址:192.168.1.101;
httpd和mariadb,以及xcache为php加速的编译过程没有变化,跟上次介绍的过程一样,这里就不多做介绍了!
注:不知道编译过程的朋友请查看《LMAP编译介绍一》所讲内容!
下面开始主要介绍php的编译!!
php-5.4.40的编译
1、解决依赖关系
2、编译安装php-5.4.40
3、配置httpd-2.4
1、启用httpd的相关模块在Apache httpd 2.4以后已经专门有一个模块针对FastCGI的实现,此模块为mod_proxy_fcgi.so,它其实是作为mod_proxy.so模块的扩充,因此,这两个模块都要加载 # vim /etc/httpd24/httpd.confLoadModule 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、配置支持使用fcgiProxyRequests 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工作
至此php以fpm方式结合apache工作介绍完毕!!
本文出自 “bengbengtu” 博客,请务必保留此出处http://bengbengtu.blog.51cto.com/9505633/1697587
编译安装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
3、配置httpd-2.4
1、启用httpd的相关模块在Apache httpd 2.4以后已经专门有一个模块针对FastCGI的实现,此模块为mod_proxy_fcgi.so,它其实是作为mod_proxy.so模块的扩充,因此,这两个模块都要加载 # vim /etc/httpd24/httpd.confLoadModule 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、配置支持使用fcgiProxyRequests 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工作
至此php以fpm方式结合apache工作介绍完毕!!
本文出自 “bengbengtu” 博客,请务必保留此出处http://bengbengtu.blog.51cto.com/9505633/1697587
相关文章推荐
- LAMP编译介绍一、 php以模块化的方式结合apache工作
- Apache Shiro权限框架在SpringMVC+Hibernate中的应用
- hadoop hdfs 读写错误解决:java.io.IOException: Filesystem closed org.apache.hadoop.hdfs.DFSClient.checkOpe
- org.apache.jasper.JasperException: /WEB-INF/jsp/add.jsp(40,24) quote symbol expected
- APACHE服务器500错误解决方法与强制跳转
- apache的<directory> 语句以及属性的含义
- java构建与管理(1) - Apache Ant Short History
- apache-archiva-2.2.0 密码过期问题的解决
- Hustoj关闭Apache的目录浏览功能
- 【学习笔记】系列二:Linux安装配置apache
- Apache 无法正常启动问题
- 揭秘Apache顶级项目大数据分析引擎 Flink:与Spark的对比与分析
- Could not resolve archetype org.apache.maven.archetypes:maven-archetype-quickstart
- Apache SSI配置 动态include静态html文件
- 使用LoadRunner监控Apache的步骤 (转)
- Datastax文档Apache Cassandra v2.1 第二部分 理解Cassandra架构_数据分发和副本
- APACHE服务实验
- CentOs中Apache开启rewrite模块详解
- apache kafka系列之log4j配置
- apache kafka系列之在zookeeper中存储结构