当前位置:Gxlcms > PHP教程 > 详解php出现fpm.servicenotfound问题的办法

详解php出现fpm.servicenotfound问题的办法

时间:2021-07-01 10:21:17 帮助过:5人阅读

这篇文章主要给大家介绍了解决php-fpm.service not found问题的办法,文中详细介绍的解决这个问题的思路与过程,分享出来给大家,如果有同样问题的朋友就不用到处找解决办法了,下面来一起看看吧。

前言

本文给大家详细介绍了解决php-fpm.service not found问题的相关内容,文中介绍的非常详细,下面来一起看看详细的介绍:

环境介绍

环境:ubuntu 16.04 64

php 版本:php-7.1.4

发现问题

正常编译安装 php 按照以前流程,把 init.d.php-fpm 往 /etc/init.d/php-fpm 拷贝

然后准备执行 service php-fpm start 时出错了

错误如下

  1. Failed to start php-fpm.service: Unit php-fpm.service not found.

提示 php-fpm.service not found

一开始以为是 php 编译安装的问题,所以直接去 php 目录下执行 php-fpm ,一切正常

但是就是用 service 管理不了

直接查看 php-fpm 管理脚本,尝试调试,最后发现执行 service 命令时,根本没有执行到这个脚本

基本排除 php 的问题

解决方法

最后找了一下 service 命令资料,找到解决办法

在 ubuntu 16.04 中,添加服务除了需要把文件copy 到 /etc/init.d/ 目录下之外,还需要使用以下命令

  1. update-rc.d php-fpm defaults
  2. // 添加
  3. update-rc.d ServiceName defaults
  4. // 删除
  5. update-rc.d ServiceName remove

解决之后,发现之前单独运行了 php-fpm 现在 service 运行出现问题

  1. [05-May-2017 17:09:32] ERROR: An another FPM instance seems to already listen on /run/php/php7.0-fpm.sock
  2. [05-May-2017 17:09:32] ERROR: FPM initialization failed

提示我们已经有一个 php-fpm 在运行了,由于我是用 sock 方式运行的,没有找到 pid 看了一下 php-fpm 管理脚本的代码,找到解决办法

  1. stop)
  2. echo -n "Gracefully shutting down php-fpm "
  3. if [ ! -r $php_fpm_PID ] ; then
  4. echo "warning, no pid file found - php-fpm is not running ?"
  5. exit 1
  6. fi
  7. kill -QUIT `cat $php_fpm_PID`
  8. wait_for_pid removed $php_fpm_PID
  9. if [ -n "$try" ] ; then
  10. echo " failed. Use force-quit"
  11. exit 1
  12. else
  13. echo " done"
  14. fi
  15. ;;

直接执行

  1. kill -QUIT `cat php_fpm_PID的路径`

以上就是详解php出现fpm.service not found问题的办法的详细内容,更多请关注Gxl网其它相关文章!

人气教程排行