这里有新鲜出炉的PHP面向对象编程,程序狗速度看过来!
PHP(外文名: Hypertext Preprocessor,中文名:“超文本预处理器”)是一种通用开源脚本语言。语法吸收了C语言、Java和Perl的特点,入门门槛较低,易于学习,使用广泛,主要适用于web开发领域。PHP的文件后缀名为php。
这篇文章主要给大家介绍了解决php-fpm.service not found问题的办法,文中详细介绍的解决这个问题的思路与过程,分享出来给大家,如果有同样问题的朋友就不用到处找解决办法了,下面来一起看看吧。
前言
本文给大家详细介绍了解决php-fpm.service not found问题的相关内容,文中介绍的非常详细,下面来一起看看详细的介绍:
环境介绍
环境:ubuntu 16.04 64
php 版本:php-7.1.4
发现问题
正常编译安装 php 按照以前流程,把
往 /etc/init.d/php-fpm 拷贝
- init.d.php-fpm
然后准备执行
时出错了
- service php-fpm start
错误如下
- 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/ 目录下之外,还需要使用以下命令
- update-rc.d php-fpm defaults
- // 添加
- update-rc.d ServiceName defaults
- // 删除
- update-rc.d ServiceName remove
解决之后,发现之前单独运行了 php-fpm 现在
运行出现问题
- service
- [05-May-2017 17:09:32] ERROR: An another FPM instance seems to already listen on /run/php/php7.0-fpm.sock
- [05-May-2017 17:09:32] ERROR: FPM initialization failed
提示我们已经有一个 php-fpm 在运行了,由于我是用 sock 方式运行的,没有找到 pid 看了一下 php-fpm 管理脚本的代码,找到解决办法
- stop)
- echo -n "Gracefully shutting down php-fpm "
- if [ ! -r $php_fpm_PID ] ; then
- echo "warning, no pid file found - php-fpm is not running ?"
- exit 1
- fi
- kill -QUIT `cat $php_fpm_PID`
- wait_for_pid removed $php_fpm_PID
- if [ -n "$try" ] ; then
- echo " failed. Use force-quit"
- exit 1
- else
- echo " done"
- fi
- ;;
直接执行
- kill - QUIT`cat php_fpm_PID的路径`
总结
来源: http://www.phperz.com/article/17/0808/339620.html