nginx服务器出现504 gateway time-out怎么解决

2023-05-16

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

做网站的同学经常会发现一些nginx服务器访问时候提示504 Gateway Time-out错误,而出现这种错误有两种情况,第一种可能是由于nginx默认的fastcgi进程响应的缓冲区太小造成的, 这将导致fastcgi进程被挂起, 如果你的fastcgi服务对这个挂起处理的不好, 那么最后就极有可能导致504 Gateway Time-out。而第二种就有可能是PHP环境的配置问题,有些网站一直是使用nginx做代理后端的apache运行php来提供服务。apache经常会不定期不定时间的出现不能服务失去响应,然后nginx出现”504 Gateway Time-out”.

那么遇到这些情况应该怎样处理呢?下面是关于nginx服务器出现504 Gateway Time-out的解决方法。

原因一:

由于nginx默认的fastcgi进程响应的缓冲区太小造成

解决方式:

一般默认的fastcgi进程响应的缓冲区是8K,这时可以设置大一点,在nginx.conf里,加入:

fastcgi_buffers 8 128k

这表示设置fastcgi缓冲区为8块128k大小的空间。

当然如果在进行某一项即时的操作, 可能需要nginx的超时参数调大点, 例如设置成60秒:

send_timeout 60;

经过这两个参数的调整,一般不会再提示“504 Gateway Time-out”错误,问题基本解决。

情况二:

PHP环境的配置问题

有时候网站需要对php-fpm和nginx进行配置修改。因为这种情况下,也会出现“504 Gateway Time-out”错误提示。而这时候Nginx 504 Gateway Time-out的含义就是所请求的网关没有请求到,简单来说就是没有请求到可以执行的PHP-CGI。

解决方式

更改php-fpm的几处配置:

把max_children由之前的10改为现在的30,这样就可以保证有充足的php-cgi进程可以被使用;

把request_terminate_timeout由之前的0s改为60s,这样php-cgi进程 处理脚本的超时时间就是60秒,可以防止进程都被挂起,提高利用效率。

接着再更改nginx的几个配置项,减少FastCGI的请求次数,尽量维持buffers不变:

fastcgi_buffers由 4 64k 改为 2 256k;

fastcgi_buffer_size 由 64k 改为 128K;

fastcgi_busy_buffers_size 由 128K 改为 256K;

fastcgi_temp_file_write_size 由 128K 改为 256K。

重新加载php-fpm和nginx的配置,再次测试,如果没有出现“504 Gateway Time-out”错误,问题解决。

情况三

另外,php-fpm的默认静态处理方式会使得php-cgi的进程长期占用内存而无法释放,这也是导致nginx出错的原因之一,因此可以将php-fpm的处理方式改成apache模式。

7392b0e365b840dc9141889188f70fb2.png

SSL证书是HTTP明文协议升级HTTPS加密协议的重要渠道,是网络安全传输的加密到通道。关于更多SSL证书的资讯,请关注GDCA(数安时代)。GDCA致力于网络信息安全,已通过WebTrust 的国际认证,是全球可信任的证书签发机构。GDCA专业技术团队将根据用户具体情况为其提供最优的产品选择建议,并针对不同的应用或服务器要求提供专业对应的HTTPS解决方案。

转载于:https://my.oschina.net/u/3771868/blog/1935533

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

nginx服务器出现504 gateway time-out怎么解决 的相关文章

随机推荐

  • 打造FreeBSD中文桌面

    打造FreeBSD中文桌面 第一站 xff1a 装KDE 1 安装桌面肯定要先配置鼠标和显卡 xff0c 对BSD而言 xff0c 可以用自动检测 xff1a usr X11R6 bin X configue cp root xorg co
  • java 组合问题_java数组排列组合问题汇总

    面试或笔试中 xff0c 多次遇到以下4个关于排列组合的手撕算法 xff0c 这里做个笔记 xff0c 方法日后查阅 xff1a 1 无重复元素的数组 xff0c 求全排列 xff1b 2 有重复元素的数组 xff0c 求全排列 xff1b
  • Btrfs文件系统管理及应用

    btrfs xff08 通常念成 Butter FS xff09 xff0c 由 Oracle 于 2007 年开发的遵循 GPL 协定的开源文件系统 Btrfs 支持创建快照 snapshot 以及支持递归的快照 xff08 即支持快照的
  • ubuntu制作本地源

    背景 平时apt get install安装软件时 xff0c 下载的deb文件都会存放在 var cache apt archives 下 xff0c 为了今后重装或给别人用 xff0c 特别是没有网络时 xff0c 这些deb文件实际上
  • linux平台下远程桌面服务器的安装和设置

    系统 ubuntu 9 04 redhat centos 说明 xff1a 使用 xdm xff08 gdm kdm xff09 时 xff0c 使用的是UDP 177端口进行广播 xff0c 只适合布署在单一子网内 xff0c 如要在多个
  • Oracle的常见错误及解决办法

    ORA 12528 TNS listener all appropriate instances are blocking new connections ORA 12528问题是因为监听中的服务使用了动态服务 实例虽然启动 xff0c 但
  • java swap空间_故障重现(内存篇2),JAVA内存不足导致频繁回收和swap引起的性能问题...

    背景起因 xff1a 记起以前的另一次也是关于内存的调优分享下 有个系统平时运行非常稳定运行 没经历过大并发考验 xff0c 然而在一次活动后 xff0c 人数并发一上来后 xff0c 系统开始卡 我按经验开始调优 xff0c 在每个关键步
  • 微信开发者工具配置服务器信息,微信开发者中心如何配置

    微信开发者中心配置是怎么样的呢 xff0c 那么微信开发者中心又是如何配置的呢 下面是学习啦小编收集整理的微信开发者中心如何配置 xff0c 希望对大家有帮助 微信开发者中心配置的方法 工具 原料 一台电脑和一个微信公众号 需要再SEA上部
  • Zabbix使用ICMP ping监控网络状况

    xff08 一 xff09 简述 xff1a Zabbix在监控网络的时候需要查看ping包的丢失率和响应时间 xff0c 而zabbix模块也有改模块 xff0c 名称为 xff1a Template Network ICMP Ping
  • 负载均衡集群HAProxy讲解篇

    负载均衡集群 HAProxy 讲解篇 一 HAProxy组成部分 Haproxy配置中分成五部分内容 xff0c 当然这些组件不是必选的 xff0c 可以根据需要选择作为配置 1 global xff1a 参数是进程级的 xff0c 通常和
  • iOS UIBezierPath类 介绍

    使用UIBezierPath类可以创建基于矢量的路径 xff0c 这个类在UIKit中 此类是Core Graphics框架关于path的一个封装 使用此类可以定义简单的形状 xff0c 如椭圆或者矩形 xff0c 或者有多个直线和曲线段组
  • ProxmoxVE 使用

    PromoxVE简介 支持 KVM OpenVZ 安装简单 WEB管理界 非常简单好用 需要注意的一点 KVM需要主板虚拟化支持 要开启主板BIOS上的虚拟化支持 PVE cluster create 多台物理机器 PVE2 0以后创建 c
  • iOS app性能优化的那些事

    iPhone上面的应用一直都是以流畅的操作体验而著称 xff0c 但是由于之前开发人员把注意力更多的放在开发功能上面 xff0c 比较少去考虑性能的问题 xff0c 可能这其中涉及到objective xff0d c c 43 43 跟lu
  • Shell生成随机密码

    tr参数 c或 complerment xff1a 取代所有不属于第一字符集的字符 xff1b d或 delete xff1a 删除所有属于第一字符集的字符 xff1b 1 生成10个小写字母 root 64 kafka60 shell l
  • 如何安装与连接MySQL?

    本文用详细的步骤说明 xff0c 帮助你一步步掌握MySQL的下载 安装和服务启动 xff0c 客户端的安装 连接和测试 帮你避开初学MySQL使用中的那些坑 需求 这是一个大数据时代 如果你开发一个大规模并发网络应用 xff0c 或者需要
  • 如何在win10系统上安装linux子系统

    2019独角兽企业重金招聘Python工程师标准 gt gt gt 对于软件开发人员来说 xff0c linux基本上是一个绕不过去的槛 因为工作经常要用到linux xff0c 电脑用纯linux还是windows 43 虚拟机装linu
  • debian9服务器系统,如何安装Debian 9(Stretch)最小服务器

    本教程将介绍如何安装Debian 9 Stretch 最小服务器 本指南的目的是提供一个最小的Debian设置 xff0c 可以作为我们其他Debian 9教程的基础 xff0c 以及在howtoing com上完美的服务器指南 1要求 要
  • 为什么在计算机里打开U盘会闪退,U盘闪退怎么办?

    萌妮i 回答数 xff1a 80 被采纳数 xff1a 95 2018 10 09 08 30 27 U盘病毒会在U盘的根目录下生成两个文件 xff1a autorun inf和runauto 两个文件 这两个文件是有隐藏属性的 怎样显示隐
  • iOS指定程序启动后初始的ViewController

    BOOL application UIApplication application didFinishLaunchingWithOptions NSDictionary launchOptions Override point for c
  • nginx服务器出现504 gateway time-out怎么解决

    2019独角兽企业重金招聘Python工程师标准 gt gt gt 做网站的同学经常会发现一些nginx服务器访问时候提示504 Gateway Time out错误 xff0c 而出现这种错误有两种情况 xff0c 第一种可能是由于ngi