[sapi/fpm/php-fpm] 错误 1,nginx下启动php-fpm出现错误的原因以及解决方案

本篇文章给大家分享的内容是nginx下启动php-fpm出现错误的原因以及解决方案,有着一定的参考价值,有需要的朋友可以参考一下

一、背景

今天的服务器好几次都报502错误,可能是由于写的脚本太多了,加上使用的第三方插件,响应超时等等一系列问题。这边碰到很多php-fpm方面的错误。记录一下。

二、报错信息

1、 value is NULL for a ZEND_INI_PARSER_ENTRY

原因:

在重启php-fpm的时候,系统提示报错,需要输入“systemctl status php5-fpm.service”来查看错误信息。ERROR: [/usr/local/php5/etc/php-fpm.conf:144] value is NULL for a ZEND_INI_PARSER_ENTRY

解决方案:

出现这个错误的原因是我们在写php-fpm.conf文件的时候,可能是写的不够标准或者写错了才造成的。这边可以查看是哪一行报错了://看好这个144,这就是你报错的地方

ERROR: [/usr/local/php5/etc/php-fpm.conf:144]

修改报错信息即可。

2、pm.start_servers(3) must not be less than pm.min_spare_servers(1) and not greater than pm.max_spare_servers(1)

原因:

这个错误可以参考:php官方文档

在配置文件的时候忽略了一些参数的大小问题。

解决方案:pm.max_children int

pm 设置为 static 时表示创建的子进程的数量,pm 设置为 dynamic 时表示最大可创建的子进程的数量。必须设置。

该选项设置可以同时提供服务的请求数限制。类似 Apache 的 mpm_prefork 中 MaxClients 的设置和 普通PHP FastCGI中的 PHP_FCGI_CHILDREN 环境变量。

pm.start_servers in设置启动时创建的子进程数目。仅在 pm 设置为 dynamic 时使用。默认值:min_spare_servers + (max_spare_servers - min_spare_servers) / 2。

pm.min_spare_servers int

设置空闲服务进程的最低数目。仅在 pm 设置为 dynamic 时使用。必须设置。

pm.max_spare_servers int

设置空闲服务进程的最大数目。仅在 pm 设置为 dynamic 时使用。必须设置。

设置的这几个参数的规律:min_spare_servers ≤ start_servers ≤ max_spare_servers ≤ max_children

3、启动php-fpm报错:cannot get uid for user ‘www_data’

原因:

这个错误是启动用户的错误。配置文件默认是“www_data”这个用户,但是这边意思是要用当前的用户启动。因为我当前使用的是”pzsh”用户,所以修改一下即可。

解决方案:

1、进入php-fpm.conf文件

2、找到 user = www-data 修改为: user = pzsh

对应的用户组group也修改为:group = pzsh

以上就是最近碰到的重启php-fpm时候遇到的问题。其实很多错误信息服务器已经提示给我们,读懂英文即可。

end

编写php服务的dockerfile文档,满足如下要求: 1)基础镜像:centos:7 2)作者信息:姓名首字母 3)下载gcc gcc-c++ gd-devel libxml2-devel libcurl-devel libjpeg-devel libpng-devel openssl-devel make perl 4)将本地文件libzip-1.2.0.tar.gz解压并复制到容器中的/tmp中 5)通过以下命令对libzip进行配置编译: cd /tmp/libzip-1.2.0 && ./configure && make && make install 6)在容器中复制并解压文件php-7.3.9.tar.gz到/tmp文件夹中,然后进入到/tmp/php-7.3.9文件夹下,并通过以下命令进行编译: ./configure --prefix=/usr/local/php \ --with-config-file-path=/usr/local/php/etc \ --with-mysql --with-mysqli \ --with-openssl --with-zlib --with-curl --with-gd \ --with-jpeg-dir --with-png-dir --with-iconv \ --enable-fpm --enable-zip --enable-mbstring 6)在容器中将/usr/local/lib/libzip/include/zipconf.h文件复制到 /usr/local/include/文件加下 7)继续进行编译make -j 4 && make install 8)在容器中将/usr/local/php/etc/php-fpm.conf.default文件复制为 /usr/local/php/etc/php-fpm.conf文件 9)在容器中将文件/usr/local/php/etc/php-fpm.d/www.conf.default 复制成/usr/local/php/etc/php-fpm.d/www.conf 文件 10)在容器中修改/usr/local/php/etc/php-fpm.d/www.conf文件中的127.0.0.1为0.0.0.0 11)在容器中复制./sapi/fpm/init.d.php-fpm文件成 /etc/init.d/php-fpm文件 12)在容器中修改/etc/init.d/php-fpm权限为可执行 13)端口9000 14)在容器启动时执行命令:/etc/init.d/php-fpm start && tail -F /var/log/messages
最新发布
06-09
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值