`
月影无痕
  • 浏览: 1008670 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

nginx php php-fpm Connection reset by peer的原因及解决办法

 
阅读更多

Connection reset by peer

这个错误是在nginx的错误日志中发现的,为了更全面的掌握nginx运行的异常,强烈建议在nginx的全局配置中增加

error_log   logs/error.log notice;

这样,就可以记录nginx的详细异常信息。

 


nginx的错误日志中会出现Connection reset by peer) while reading response header from upstream, client: 1.1.1.1, server: 102.local, request: "GET / HTTP/1.1", upstream: "fastcgi://127.0.0.1:9000

 

后来反复检查,发现这是因为php运行较慢,并超出php-fpm.conf的request_terminate_timeout设置的秒数。

 

request_terminate_timeout用于设置当某个php脚本运行最长时间,若超出php-fpm进程管理器强行中止当前程序,并关闭fastcgi和nginx的网络连接,然后nginx中就会出现Connection reset by peer的错误了。

 

也就是说,产生这个错误的原因是:

php 程序的运行时间超出request_terminate_timeout设置的值。

在php-fpm环境下,在php的安装目录的etc/php-fpm.conf中有此值的设置项,可将其设置为0或更大的值。

 

提示,在php.ini中存在一项max_execution_time,也用于设置php脚本的最长执行时间。但在php-fpm环境下,我发现max_execution_time的设置是无效的,只有request_terminate_timeout产生了作用。

 

总结:请将request_terminate_timeout设置为较大的值或0(请自行承担可能带来的风险),可减少因php脚本执行时行过长导致nginx产生Connection reset by peer错误。

 

归根结底,还是php程序执行性能太差,导致超时退出。

 

开启fpm的slowlog, 及时发现性能问题:

request_slowlog_timeout = 1s

 

slowlog = var/log/slow.log

request_terminate_timeout=30s

分享到:
评论

相关推荐

    centos7+nginx+php php-fpm

    php-fpm。放到/etc/init.d/目录。然后执行:chmod a+x php-fpm 然后就可以/etc/init.d/php-fpm start 或者systemctl start php-fpm

    nginx+php-fpm解决502 Bad Gateway.zip

    nginx+php-fpm解决502 Bad Gateway.zip

    nginx && php-fpm 停止脚本

    Windows 下使用 RunHiddenConsole 启动 nginx、php-fpm, https://www.nginx.com/resources/wiki/start/topics/examples/phpfastcgionwindows/

    Debian系统安装nginx+php5-fpm

    在IT领域,尤其是在服务器管理与Web开发中,安装和配置Nginx以及PHP-FPM是常见的操作。这里我们将深入探讨如何在Debian系统上,特别是友善之臂NanoPC-T2这款嵌入式设备上,进行这项工作。 首先,让我们了解Nginx。...

    php-fpm.rpm包

    PHP-FPM是PHP FastCGI的进程管理器,它允许Web服务器(如Apache或Nginx)通过FastCGI接口与PHP解释器进行通信,从而处理PHP脚本。在Web开发中,PHP通常被用作服务器端编程语言,用于生成动态网页内容。 PHP-FPM的...

    docker-compose php7.3.4-fpm+nginx+mysql配置

    docker-compose php7.3.4-fpm+nginx+mysql配置

    基于alpine的php-fpm nginx docker一键环境

    基于alpine的php-fpm nginx docker一键环境 可以手动替换所有版本 通过修改dockerfile,支持容器加载代码,或者挂载代码 也可以支持k8s做为基础环境容器,整体已经经过优化

    docker-compose-nginx-phpfpm-源码.rar

    docker-compose-nginx-phpfpm-源码.rar

    解决nginx+php-fpm无法上传文件问题.docx

    解决nginx+php-fpm无法上传文件问题 一、nginx配置文件中的client_max_body_size设置 在nginx配置文件中,client_max_body_size指令用于设置客户端能够上传的最大文件大小。默认情况下,该值设置为1M,导致上传大...

    Fedora 15 安装 Nginx (PHP-FPM)+MySQL+PHP Web服务.docx

    【Fedora 15 安装 Nginx (PHP-FPM) + MySQL + PHP Web服务】 在Fedora 15操作系统上搭建一个完整的Web服务环境,通常包括Nginx(一个高性能的HTTP服务器和反向代理服务器)、PHP-FPM(PHP FastCGI进程管理器)以及...

    nginx+php-fpm模式php内存泄漏探究1

    本文主要探讨的是在Nginx+PHP-FPM模式下,PHP内存泄漏问题及其解决方案。 标题中的"nginx+php-fpm模式php内存泄漏探究1"是指在使用Nginx作为Web服务器,PHP-FPM作为PHP解释器的环境中,出现PHP内存泄漏的现象。描述...

    nginx && php-fpm 启动脚本

    Windows 下使用 RunHiddenConsole 启动 nginx、php-fpm, https://www.nginx.com/resources/wiki/start/topics/examples/phpfastcgionwindows/

    nginx+php-fpm优化技巧总结

    ### Nginx+php-fpm优化技巧总结 #### 一、引言 随着互联网应用的不断发展壮大,服务器的性能优化成为提升用户体验的关键因素之一。在众多高性能架构中,Nginx+php-fpm的组合因其高效稳定而备受青睐。本文将深入探讨...

    nginx-php-fpm-docker

    nginx-php-fpm-docker

    php-fpm.tar.gz

    在Linux环境下,安装PHP-FPM之后,需要配置其与Web服务器(如Nginx或Apache)的协作。PHP-FPM通常以守护进程的方式运行,监听特定端口(默认为9000),Web服务器通过FastCGI接口发送请求给PHP-FPM,然后由PHP-FPM...

    docker-nginx-php5-fpm:这是一个带有Nginx,PHP5-FPM和Ubuntu 14.04的简单容器

    docker pull vutran/docker-nginx-php5-fpm 要运行此图像的实例: docker run --name mywebapp -d -P vutran/docker-nginx-php5-fpm 您可以将本地应用程序目录挂载到/var/www/html的容器中: docker run --name...

    nginx-php-fpm:用于dockerhub构建的Nginx和php-fpm

    请在上打开请求请求和问题 总览 这是一个Dockerfile / ... docker pull richarvey/nginx-php-fpm:latest 跑步 要简单地运行容器: sudo docker run -d richarvey/nginx-php-fpm 要在启动时从git动态提取代码: doc

    Nginx + PHP-FPM + APC=绝妙的组合

    【Nginx + PHP-FPM + APC 绝妙组合详解】 在互联网服务领域,Nginx、PHP-FPM(PHP FastCGI Process Manager)和 Alternative PHP Cache (APC) 的结合已经成为一种高效的Web服务器配置模式,尤其适用于高流量网站。...

    openshift-nginx-php-fpm:带有自定义php-fpm构建的nginx和php-fpm的OpenShift模板

    该模板使用php-fpm为nginx创建OpenShift资源带有nginx和php-fpm的Pod的DeploymentConfig 适用于php-fpm的BuiltConfig和ImageStream(能够自定义php-fpm版本并包括自定义PHP模块) 用于nginx配置的ConfigMap 为Nginx-...

    源码安装nginx+php-fpm+http push测试通过

    在IT行业中,构建高效、可扩展的Web服务是至关重要的,而`Nginx`、`PHP-FPM`和`HTTP Push`技术是实现这一目标的关键组件。本教程将详细介绍如何在`CentOS 5.2`操作系统上,通过源码安装`Nginx`、`PHP-FPM`,并实现`...

Global site tag (gtag.js) - Google Analytics