转:http://blog.csdn.net/field_yang/article/details/52401994

该文主要讲述:如何配置PHP-fpm、常见报错解决方法和php-fpm的启动、关闭和重启。

LNMP环境中的nginx是不支持php的,需要通过fastcgi插件来处理有关php的请求。而php需要php-fpm这个组件提供该功能。在php5.3.3以前的版本php-fpm是以一个补丁包的形式存在的,而php5.3.3以后只需在编译安装时使用–enable-fpm加载该模块即可,无需另行安装。

[root@localhost php-5.6.25]#/usr/local/php/sbin/php-fpm

[29-Aug-2016 17:36:05] ERROR: failed toopen configuration file '/usr/local/php/etc/php-fpm.conf': No such file ordirectory (2)

[29-Aug-2016 17:36:05] ERROR: failed toload configuration file '/usr/local/php/etc/php-fpm.conf'

[29-Aug-2016 17:36:05] ERROR: FPMinitialization failed

启动php-fpm发现缺乏配置文件/usr/local/php/etc/php-fpm.conf

此时只需复制php-fpm的配置文件在安装php时提供的配置文件的模版/usr/local/php/etc/php-fpm.conf.default到相应目录下即可,此处有两种方法,均可提供配置文件,即分别将末班复制到/usr/local/php/etc/或者 /usr/local/etc/并重命名为php-fpm.conf

[root@localhost etc]# cd /usr/local/php/etc/

[root@localhost etc]# ls

pear.conf php-fpm.conf.default

[root@localhost etc]# cp/usr/local/php/etc/php-fpm.conf/usr/local/etc/php-fpm.conf

利用/usr/local/php/sbin/php-fpm启动FPM

[root@localhost etc]# /usr/local/php/sbin/php-fpm

[root@localhost etc]#cp php-fpm.conf.defaultphp-fpm.conf

[root@localhost etc]# /usr/local/php/sbin/php-fpm

 

至此php-fpm配置完成,鉴于fpm是置于PHP和Nginx之间的一层应用,所以配置成服务开机自启。

下面配置php-fpm以服务形式启动

[root@localhost etc]# cd /usr/local/php-5.6.25/

[root@localhost php-5.6.25]# cp./sapi/fpm/init.d.php-fpm  /etc/init.d/php-fpm

[root@localhost php-5.6.25]# ll /etc/init.d/php-fpm

-rw-r--r-- 1 root root 2354 8月  3115:54 /etc/init.d/php-fpm

[root@localhost php-5.6.25]# chmod a+x/etc/init.d/php-fpm

[root@localhost php-5.6.25]# ll /etc/init.d/php-fpm

-rwxr-xr-x 1 root root 2354 8月  3115:54 /etc/init.d/php-fpm

[root@localhost php-5.6.25]# /etc/init.d/php-fpmstart

Starting php-fpm [31-Aug-2016 15:56:00]ERROR: unable to bind listening socket for address '127.0.0.1:9000': Addressalready in use (98)

[31-Aug-2016 15:56:00] ERROR: FPMinitialization failed

Failed

[root@localhost php-5.6.25]# netstat -tunlp |grep9000

tcp       0      0 127.0.0.1:9000              0.0.0.0:*                   LISTEN      4928/php-fpm

 [root@localhost etc]# /etc/init.d/php-fpm stop

Gracefully shutting down php-fpm warning,no pid file found - php-fpm is not running ?

关闭php-fpm服务时发现报错,缺乏pid文件,解决方法为编辑配置文件,启用pid文件

[root@localhost etc]# vim php-fpm.conf

pid = run/php-fpm.pid

[root@localhost etc]# kill -INT `cat/usr/local/php/var/run/php-fpm.pid`

cat: /usr/local/php/var/run/php-fpm.pid: 没有那个文件或目录

[root@localhost etc]# /etc/init.d/php-fpm stop

Gracefully shutting down php-fpm warning,no pid file found - php-fpm is not running ?

尝试关闭服务时再次报错,手动建立php-fpm.pid文件即可

[root@localhost etc]# cd /usr/local/php/var/run/

[root@localhost run]# vim php-fpm.pid

[root@localhost run]# ls

php-fpm.pid

[root@localhost run]# service php-fpm stop

Gracefully shutting down php-fpm . done

[root@localhost run]# service php-fpm start

Starting php-fpm done

[root@localhost run]# netstat -tunlp |grep 9000

tcp       0      0 127.0.0.1:9000              0.0.0.0:*                   LISTEN      3008/php-fpm

[root@localhost run]# kill -INT `cat /usr/local/php/var/run/php-fpm.pid`

[root@localhost run]# netstat -tunlp |grep 9000

[root@localhost run]#  /etc/init.d/php-fpm start

Startingphp-fpm  done

将服务添加到chkconfig列表,设置开机启动

[root@localhost run]# chkconfig --add php-fpm

[root@localhost run]# chkconfig php-fpm on

 

至此,php-fpm配置完成,下面提供两种控制方式

① PHP-FPM使用信号控制:

INT, TERM 立刻终止

QUIT 平滑终止

USR1 重新打开日志文件

USR2 平滑重载所有worker进程并重新载入配置和二进制模块

启动

[root@localhost run]# /usr/local/php/sbin/php-fpm

关闭:

[root@localhost run]# kill -INT `cat/usr/local/php/var/run/php-fpm.pid`

重启:

[root@localhost run]# kill -USR2 `cat/usr/local/php/var/run/php-fpm.pid`

②  

服务方式控制

Usage: /etc/init.d/php-fpm{start|stop|force-quit|restart|reload|status}

[root@localhost run]# service php-fpm start

Starting php-fpm done

[root@localhost run]# service php-fpm stop

Gracefully shutting down php-fpm . done

[root@localhost run]#  /etc/init.d/php-fpm restart

Gracefully shutting down php-fpm . done

Starting php-fpm done

[root@localhost run]#

PHP5.6中php-fpm的配置、启动、关闭和重启的更多相关文章

  1. Linux中安装配置启动关闭nginx等一系列动作

    Nginx简介 1.Nginx (engine x) 是一个高性能的Web服务器和反向代理服务器,也可以作为邮件代理服务器: 2.Nginx 是由俄罗斯人 Igor Sysoev 采用C语言开发编写的 ...

  2. Nginx启动关闭和重启、文档直接下载不阅览

    nginx启动相关 启动:sbin/nginx -c conf/nginx.conf 关闭:sbin/nginx -s stop 重启(重新加载配置文件):sbin/nginx -s reload 检 ...

  3. Jenkins 四: 启动关闭以及重启jenkins

    启动 1. 在桌面新建一个jenkins.bat文件.内容如下: cd /d %JENKINS_HOME% java -jar %JENKINS_HOME%\jenkins.war --httpPor ...

  4. web.xml中配置启动时加载的servlet,load-on-starup

    web.xml中配置启动时加载的servlet,load-on-starup 使用servlet来初始化配置文件数据: 在servlet的配置当中,<load-on-startup>1&l ...

  5. 【推荐】CentOS安装PHP-5.6.4+扩展安装+安全配置+性能配置

    注:以下所有操作均在CentOS 6.5 x86_64位系统下完成. #准备工作# 前段时间PHP官方发布了一个重要的安全升级公告,修复了两个unserialize函数的严重漏洞,目前受影响的版本有: ...

  6. Linux中Nginx安装与配置详解

    转载自:http://www.linuxidc.com/Linux/2016-08/134110.htm Linux中Nginx安装与配置详解(CentOS-6.5:nginx-1.5.0). 1 N ...

  7. windows下PHP5.5.6+Apache2.4.7配置

    本文主要阐述在windows8及win8.1 环境下搭建PHP5.5.6+Apache2.4.7. 1.软件准备 apache 2.4.7:http://pan.baidu.com/s/1iUPif ...

  8. php5.6 + apache2.4+mysql5.7 配置

    ----------------------------------------------------- ★软件工具:(下载时注意下载相应版本,不同版本安装细节可能会有差异!!) 1>http ...

  9. apache中虚拟主机的配置

    一.两种方式:基于域名的虚拟主机和基于IP地址的的虚拟主机 (这里基于前者) 二.作用:实现在同一个web服务器下,同时运行很多个站点(项目) 三.虚拟主机的配置 1.在核心配置文件中加载虚拟主机配置 ...

随机推荐

  1. md5sum/opensll md5

    http://m.blog.csdn.net/article/details?id=42041329 MD5算法常常被用来验证网络文件传输的完整性,防止文件被人篡改.MD5全称是报文摘要算法(Mess ...

  2. Hadoop基础-HDFS分布式文件系统的存储

    Hadoop基础-HDFS分布式文件系统的存储 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.HDFS数据块 1>.磁盘中的数据块 每个磁盘都有默认的数据块大小,这个磁盘 ...

  3. [Web] Web请求过程之二:DNS 域名解析

    一.域名解析过程 1.浏览器检查缓存,域名缓存时间可以通过 TTL 属性来设置. 2.如果浏览器缓存中没有,浏览器会去查找操作系统缓存中是否有这个域名对应的 DNS 解析结果.如果要设置域名对应的 I ...

  4. SourceTree使用SSH克隆码云项目

    SourceTree使用SSH克隆码云项目 觉得有用的话,欢迎一起讨论相互学习~Follow Me SourceTree使用SSH克隆码云项目 参考文献 https://blog.csdn.net/q ...

  5. Redis slowlog慢查询

    slowlog (阅读原文) 此命令用于读取和重置redis慢请求日志 redis slow log概述 redis的slow log记录了那些执行时间超过规定时长的请求.执行时间不包括I/O操作(比 ...

  6. MESS-配置

    Author:KillerLegend From:http://www.cnblogs.com/killerlegend/p/3824989.html Date:2014.7.4 Part A 第一部 ...

  7. Linux部署node环境

    # wget https://nodejs.org/dist/v8.11.4/node-v8.11.4-linux-x64.tar.xz# tar -axvf node-v8.11.4-linux-x ...

  8. OpenResty 扩展库之(一)——lua-resty-shell 库

    介绍 当您需要执行子进程(或shell命令)时,这是一个打算与OpenResty应用程序一起使用的小型库. 它类似于os.execute和io.popen,除了它是完全非阻塞的,因此即使对于需要很长时 ...

  9. dp px 互转工具类

    public class DensityUtils { public static int dpToPx(Context context,int dp){ float density = contex ...

  10. python学习笔记2-tuple

    tuple: #元组也是List,但是值不能变 a=(') print(a[1]) mysql=(',''root','123456') print(mysql.count('root')) #例子 ...