recv() failed (104: Connection reset by peer) while reading response header from upstream

2017年12月1日10:18:34

情景描述: 浏览器执行了一会儿, 报500错误

运行环境:  nginx + php-fpm

nginx日志:  recv() failed (104: Connection reset by peer) while reading response header from upstream

fpm日志:  fpm_request_check_timed_out(), line 146: child 2518, script '***/index.php' (pool www5) executing too slow (2.019546 sec), logging

查看 php-fpm 配置文件后, 发现脚本执行超时时间太短了, 修改为60s, 然后重启php,nginx环境, 就没问题了

像这样出现执行了一会儿又报错的, 可能的情况有

1. 域名解析有问题

2. 超时(脚本数据库操作太多, 时间太长)

3. 接口请求相互依赖导致的死等

 

有的会报502,并很快返回

调试到curl时出错, 版本 5.2.17,

本地环境出错(命令行执行: Segmentation fault ; 浏览器执行相同代码直接502, 但是找不到日志),

代码上传到测试环境(另一台PHP5.2的机器) 就不会报错了

 PHP7 执行相同的代码也没有问题

posted @ 2017-12-01 10:27  myD  阅读(4060)  评论(0编辑  收藏  举报