PHP报错child 30396 said into stderr: zend_mm_heap corrupted
一、环境介绍
1.Centos 7.3 8核32G
有测试环境和正式环境,生产环境放在SVN上,以前的运维做的(建议大家线上代码不要放在SVN,后文介绍原因)
2.报错内容:
官网一个功能突然不能用了,访问显示502。排查php-fpm.log显示如下报错。但是测试环境一模一样的代码,功能可以正常运行。
[06-Mar-2018 15:54:57] WARNING: [pool www] child 30396 said into stderr: "zend_mm_heap corrupted"
二、处理流程
1.首先怀疑是权限问题。
修改文件
chown -R www:www filename && chmod 777 filename
任然无法访问
2.检查nginx错误日志和php-fpm日志
[06-Mar-2018 15:54:57] WARNING: [pool www] child 30396 said into stderr: "zend_mm_heap corrupted"
[06-Mar-2018 15:54:57] WARNING: [pool www] child 30396 exited with code 1 after 239.805753 seconds from start
百度,谷歌查询了一些链接,“”确定是opcache模块的问题“,”当时觉得基本可以解决了。但是我把opcache整个模块注释掉还是没用。链接贴在下面,没有解决我的问题,可能对朋友们会有帮助。
https://stackoverflow.com/questions/2247977/what-does-zend-mm-heap-corrupted-mean
https://github.com/websharks/comet-cache/issues/705
3.觉得是一些依赖组件的问题,遂把测试环境的composer包等更新到正式环境,测试仍然失败。测试失败后还原组件(做这些操作一定要记得备份,随时还原)。
4.到这里和开发产生分歧了。我觉得是代码运行可能有问题,比如bug或者关联的某文件权限。开发觉得是我环境的问题。说干就干,一次性设置正式环境所有文件的权限。
sudo chown -R www:www /web/filedir
问题解决。
三、反思
1.线上代码不要放在SVN,会有很多坑。以前的运维把很多项目都放在线上,导致出了很多坑。令我深恶痛绝。
(1)比如文件权限,svn更新文件以后,文件属主和属组会变成root。访问就会失败。
(2)多一层SVN客户端又多了造成各种文件锁的情况
2.我以后做的项目,尽量通过Jenkins直接推送线上代码。看起来只是一些小错误,简单的问题。 但是在排查过程中是非常费时费力的,并且影响业务。所以前期的思考,过程中的改进很重要。
PHP报错child 30396 said into stderr: zend_mm_heap corrupted相关推荐
- 【SARScape 5.6 报错】Invalid XML format(file corrupted?)[EC:40021]
[SARScape5 .6 报错]Invalid XML format(file corrupted?)[EC:40021] 报错原因: 找不到文件,说明文件位置可能有问题 解决方案: 检查文件路径是 ...
- java报错stderr_java – 记录错误到stderr和调试,信息使用log4j到stdout
我想添加日志到我正在开发的应用程序,使用apache log4j.此时,我想将所有级别INFO和更低(TRACE,DEBUG)的日志消息重定向到stdout,并将所有来自WARN和更高版本(ERROR ...
- linux 简单脚本fi报错,shell脚本报错:[: =: unary operator expected
shell脚本报错:"[: =: unary operator expected" 在匹配字符串相等时,我用了类似这样的语句: if [ $STATUS == "OK&q ...
- Eclipse中启动tomcat报错:A child container failed during start
我真的很崩溃,先是workspace崩了,费了好久重建的workspace,然后建立了一个小demo项目,tomcat中启动却报错,挑选其中比较重要的2条信息如下: A child container ...
- 关于mysql数据库的外键插入报错:Cannot add or update a child row: a foreign key constraint fails,完整性问题
关于mysql的外键插入报错:Cannot add or update a child row: a foreign key constraint fails..... 首先确定sql语句的正确 然后 ...
- 使用maven聚合安装多个maven工程到本地仓库报错的解决方法:child module pom.xml does not exist
转自: https://stackoverflow.com/questions/26021141/maven-child-module-does-not-exist 1)在maven项目Parent中 ...
- (转)Eclipse4.2 Tomcat启动报错 A child container failed during start
Eclipse4.2 Tomcat启动报错 A child container failed during start 2013-5-21 15:02:24 org.apache.catalina.c ...
- 报错:/check/src/check_log.c:27:10: 致命错误: subunit/child.h:没有那个文件或目录
报错: external/check/src/check_log.c:27:10: 致命错误: subunit/child.h:没有那个文件或目录解决: # git clone https://git ...
- 使用Route报错:A <Route> is only ever to be used as the child of <Routes> element, never rendered directl
A <Route> is only ever to be used as the child of <Routes> element, never rendered direc ...
- react-native 报错Cannot add a child that doesn't have a YogaNode to a parent without a measur
报错:Cannot add a child that doesn't have a YogaNode to a parent without a measur 原因:在render()里有语法错误 比 ...
最新文章
- COJN 0575 800601滑雪
- 微软每年豪砸安全研发 10 亿美元,聊聊背后的技术密码
- springmvc请求返回一个字符_response 返回 带双引号 的字符串解决办法 springmvc
- Onvif之wsdl地址
- windows server 2003 远程拨号服务器
- SSL/TLS 受诫礼攻击漏洞的问题的解决记录
- Chuck语言学习笔记——4.复数,四则运算与类型转换
- Java中的~运算符号
- 什么是高并发?高并发解决方案
- 【Matlab】帮助文档打不开
- Pytorch模型量化实践并以ResNet18模型量化为例(附代码)
- Excel设置行高列宽单元格为正方形,行列比例
- 安装kubectl失败:error: unpacking of archive failed on file /usr/bin/kubectl: cpio: rename
- 如何彻底清除2345导航,从浏览器快捷方式,注册表,添加hosts限制三个方面进行修正
- 用VideoView实现播放本地的m3u8
- Linux中 vi、删除和退出 简单操作
- 美国计算机科学专业学校排名,美国计算机科学专业排名
- 使用python进行数据分析(二)
- 求解器:助力智能决策的利器
- 数模美赛如何找数据 | 2023年美赛数学建模必备数据库