linuxphp7-fpm启动失败的解决办法:1、修改“php-fpm.conf”文件中的“error_log”项;2、修改php的配置文件位置;3、将nginx修改为当前系统的用户名;4、直接创建nginx用户和用户组即可。
php-fpm启动失败的解决(centOS安装PHP后)
在centOS7.0上编译安装php7.2.1后,因为新加了php扩展,所以需要重启php-fpm;
一、首先说一下我的配置,关于配置php-fpm:
刚开始安装后,这几个文件是没有的,需要逐个cp创建,然后启动即可,如果没有报错,则不用看“二、php-fpm启动报错:”
cpphp.ini-development/usr/local/php7/etc/php.ini
cp/usr/local/php7/etc/php-fpm.conf.default/usr/local/php7/etc/php-fpm.conf
cp/usr/local/php7/etc/php-fpm.d/www.conf.default/usr/local/php7/etc/php-fpm.d/www.conf
2、
/usr/local/php/sbin/php-fpm
二、php-fpm启动报错:
1、直接运行,有报错找不到配置文件。
[11-Jan-201416:03:03]ERROR:failedtoopenconfigurationfile'/private/etc/php-fpm.conf':Nosuchfileordirectory(2)
[11-Jan-201416:03:03]ERROR:failedtoloadconfigurationfile'/private/etc/php-fpm.conf'
[11-Jan-201416:03:03]ERROR:FPMinitializationfailed
可以在/private/etc/目录下生成配置文件,需要root权限(sudo)
或者在普通用户有权限的目录里放置配置文件,通过--fpm-config参数指定配置文件的位置,如下:
#cp/private/etc/php-fpm.conf.default/etc/php-fpm.conf
$php-fpm--fpm-config/etc/php-fpm.conf
[11-Jan-201416:10:49]ERROR:failedtoopenerror_log(/usr/var/log/php-fpm.log):Nosuchfileordirectory(2)
[11-Jan-201416:10:49]ERROR:failedtopostprocesstheconfiguration
[11-Jan-201416:10:49]ERROR:FPMinitializationfailed
错误信息显示:不能正确的打开”日志“文件,原因是默认在/usr/var目录下工作,可以修改配置文件指定正确的日志文件路径
$vim/usr/local/etc/php-fpm.conf
修改php-fpm.conf文件中的error_log项,默认前缀是/usr/var,但并没有这个路径
error_log=/usr/local/var/log/php-fpm.log
pid=/usr/local/var/run/php-fpm.pid
或者不修改配置文件中配置项的路径,在php-fpm的运行参数中(-p)指定放置运行时文件的相对路径前缀
$php-fpm--fpm-config/php-fpm.conf--prefix/usr/local/var
到此,php-fpm守护进程已经基本可以正确的启动了。
[12-Jul-201317:18:57]ERROR:[/usr/local/php5/etc/php-fpm.conf:144]valueisNULLforaZEND_INI_PARSER_ENTRY
[12-Jul-201317:18:57]ERROR:failedtoloadconfigurationfile'/usr/local/php5/etc/php-fpm.conf'
[12-Jul-201317:18:57]ERROR:FPMinitializationfailed
[root@localhost~]#/usr/local/php5/sbin/php-fpm
PHP:syntaxerror,unexpectedTC_STRINGin/usr/local/php5/etc/php.inionline211
3、启动php-fpm报错ERROR:[poolwww]cannotgetuidforuser'nginx'
当编译好php7之后用以下命令启动
[07-Dec-201817:59:31]ERROR:[poolwww]cannotgetuidforuser'nginx'
[07-Dec-201817:59:31]ERROR:FPMinitializationfailed
修改php的配置文件位置在www.conf
vi/usr/local/php/etc/php-fpm.d/www.conf
将nginx修改为当前系统的用户名如下:
;Unixuser/groupofprocesses
;Note:Theuserismandatory.Ifthegroupisnotset,thedefaultuser'sgroup
group=www.emam.cn
方法二:
直接创建nginx用户和用户组
usermod-Gnginxnginx
三、php-fpm内容扩展
php5.3.3以后的php-fpm不再支持php-fpm以前具有的/usr/local/php/sbin/php-fpm(start|stop|reload)等命令,所以不要再看这种老掉牙的命令了,需要使用信号控制:
master进程可以理解以下信号
USR2平滑重载所有worker进程并重新载入配置和二进制模块
先查看php-fpm的master进程号
root218910.00.0112660960pts/3R+16:180:00grep--color=autophp-fpm
root428910.00.11827961220?Ss4月180:19php-fpm:masterprocess(/usr/local/php/etc/php-fpm.conf)
nobody428920.00.61830006516?S4月180:07php-fpm:poolwww
nobody428930.00.61830006508?S4月180:17php-fpm:poolwww
重启php-fpm:
kill-USR242891
OK了。
上面方案一般是没有生成php-fpm.pid文件时使用,如果要生成php-fpm.pid,使用下面这种方案:
上面master进程可以看到,matster使用的是/usr/local/php/etc/php-fpm.conf这个配置文件,cat/usr/local/php/etc/php-fpm.conf发现:
;Note:thedefaultprefixis/usr/local/php/var
;pid=run/php-fpm.pid
pid文件路径应该位于/usr/local/php/var/run/php-fpm.pid,由于注释掉,所以没有生成,我们把注释去除,再kill-USR242891重启php-fpm,便会生成pid文件,下次就可以使用以下命令重启,关闭php-fpm了:
kill-INT'cat/usr/local/php/var/run/php-fpm.pid'
php-fpm重启:
kill-USR2'cat/usr/local/php/var/run/php-fpm.pid'
以上就是linuxphp7-fpm启动失败如何解决的详细内容,更多请关注主机测评网其它相关文章!
本文来源:国外服务器--linuxphp7fpm启动失败如何解决(linuxxampp启动)
本文地址:https://www.idcbaba.com/guowai/4423.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 1919100645@qq.com 举报,一经查实,本站将立刻删除。



