最近遇到一个问题504 GATEWAY TIMEOUT的问题,在浏览器的NetWork里面看是这个效果。时间大概是60s。

修改nginx配置

目前后端技术架构主要是nginx和php-fpm,前端主要是vue框架打包发布。
于是首先想到了是nginx超时时间或者与php的超时时间设置的过段,然后配置nginx.conf设置了这些参数。

http {
...
fastcgi_connect_timeout 300;
fastcgi_send_timeout 300;
fastcgi_read_timeout 300;
proxy_connect_timeout 300;
proxy_read_timeout 300;
proxy_send_timeout 300;
keepalive_timeout 300;
...
}
nginx -s reload

修改PHP配置

然后发现并没有解决问题,504 GATEWAY TIMEOUT仍然在请求60秒左右被返回。然后又想到php的配置问题,决定调整一下php的一些参数。

vim /etc/php.ini
max_execution_time = 300 //设置执行时间为300秒保存 service php-fpm restart // 然后去代码里面设置
set_time_limit(300);

进一步调整

经过了上面PHP的设置,发现也没有什么用,该超时还是超时。针对于一般的情况来说,上面的操作一般就能解决问题了。
然后又开始怀疑是不是vue框架本身的request有一个默认的超时。
于是通过浏览器把请求通过curl拿出来,去命令行执行。发现经过1分钟还是超时。

到现在为止实际上还是没有解决问题。于是比较头疼。

找到原因

接着分析原因。看是否域名访问后的第一步没有直接到服务器。

1. 在服务器上面执行如下命令,查看机器ip,得到ip A
curl ifconfig.me
2. 然后使用ping命令查看域名指向得到ip B
ping 你的域名
3. 发现A和B不一样,问题终于找到了,说明域名是经过中转才到达我们的服务器
真实的超时是在B机器上面,而不是我们自己的服务器,所以这就是为啥上面的一系列调整没有生效的原因。
4. 马上来测试一下。`windows + R` 输入 `C:\WINDOWS\system32\drivers\etc` 回车,找到`hosts`文件。
5. 打开`hosts` 末尾追加`ipA 你的域名`。然后保存。这样就让域名直接指向了我们自己的服务器。

然后在进行请求,发现请求时长就可以超过60秒了。也没有再出现504 GATEWAY TIMEOUT的情况。

思考

所以很多时候不要陷入到自己的常规思维里面去了,偶尔出去放松一下,回来或许有不一样的视角。今天内容就分享到这个,有疑问的,可以留言讨论哦,喜欢作者可以给个关注哟

解决504 GATEWAY TIMEOUT Nginx网关超时的更多相关文章

  1. 解决504 Gateway Time-out(nginx)

    504 Gateway Time-out问题常见于使用nginx作为web server的服务器的网站 我遇到这个问题是在需要插入一万多条数据时候遇到的 一般看来, 这种情况可能是由于nginx默认的 ...

  2. 解决 502、504 Gateway Time-out(nginx)

    一.504 Gateway Time-out问题常见于使用nginx作为web server的服务器的网站 我遇到这个问题是在升级discuz论坛的时候遇到的 一般看来, 这种情况可能是由于nginx ...

  3. 解决 504 Gateway Time-out和502 Bad Gateway(nginx)

    504 Gateway Time-out 问题所在: 所请求的网关没有请求到,简单来说就是没有请求到可以执行的PHP-CGI. 一般看来, 这种情况可能是由于nginx默认的fastcgi进程响应的缓 ...

  4. 504 Gateway Time-out ( Nginx + PHP ) 解决小计

    问题 最近有个项目,运算量比较大,服务器经常报 504 Gateway Time-out 解决方案 fastcgi_connect_timeout 默认值是 60 第一次尝试修改为 120 ,仍然报5 ...

  5. 如何解决“504 Gateway Time-out”错误

    做网站的同学经常会发现一些nginx服务器访问时候提示504 Gateway Time-out错误,一般情况下是由nginx默认的fastcgi进程响应慢引起的,但也有其他情况,这里我总结了一些解决办 ...

  6. nginx出现504 Gateway Time-out的解决思路

    http://www.xbc.me/nginx-fix-504-gateway-timeout/ 在安装完Nginx+PHP-fpm+Mysql后 (如何安装LNMP环境,请参考快速配置LNMP环境N ...

  7. Nginx + php-fpm 执行 PHP 脚本超时 报错 502 Bad Gateway + 504 Gateway Time-out 的解决办法

    上周写好的发送邮件的计划任务只发送了一部分,检查计划任务日志,发现 502 Bad Gateway 的错误(已经在脚本中设置了 set_time_limit(0)). 后来在网上查找资料,可以通过以下 ...

  8. nginx 504 Gateway Time-out错误解决办法

    我们经常会发现大量的nginx服务器访问时会提示nginx 504 Gateway Time-out错误了,下面我来总结了一些解决办法,有需要了解的同学可进入参考. 一般看来, 这种情况可能是由于ng ...

  9. Nginx 504 Gateway Time-out分析及解决方法

    一.场景还原php程序在执行抓取远程图片库并保存至本地服务器的时候,出现了“504 Gateway Time-out”错误提示. 问题定位:由于图片巨多,所以下载时间很长(10分钟以上),引起网关超时 ...

  10. nginx 出现504 Gateway Time-out的解决方法

    本文介绍nginx出现504 Gateway Time-out问题的原因,分析问题并提供解决方法. 1.问题分析nginx访问出现504 Gateway Time-out,一般是由于程序执行时间过长导 ...

随机推荐

  1. 未在本地计算机上注册“Microsoft.ACE.OLEDB.12.0”提供程序。(C# EXCEL导入demo)

    1. 安装office包  https://www.microsoft.com/zh-cn/download/confirmation.aspx?id=13255 2.需要在相应的IIS应用程序池启用 ...

  2. Kafka主题,分区,副本介绍

    介绍 今天分享一下kafka的主题(topic),分区(partition)和副本(replication),主题是Kafka中很重要的部分,消息的生产和消费都要以主题为基础,一个主题可以对应多个分区 ...

  3. Oracle中的sql脚本语言中的循环语句介绍

    --sql脚本语言的循环介绍:--1.goto循环点.declare  x number;begin  x:=0;--变量初始化:  <<repeat_loop>>--设置循环 ...

  4. javaSE学习一

    java基础 java是一种强类型语言:要求变量的使用要严格符合规定,所有变量都必须先定义后才能使用. java的数据类型有两大类:基本数据类型和引用类型(类.接口.数组) 八大基本数据类型: 1.整 ...

  5. Cookie之记录用户上次访问时间

    Cookie之记录用户访问时间 需求: 需求: 1:用户访问服务器(Servlet),判断用户是否是第一次访问,如果是第一次访问,则在页面响应内容为:"您好,欢迎您首次访问"; 2 ...

  6. vue 图片分页

    <div class="activities phone"> <!-- 动态 --> <div class="activity" ...

  7. KMP 算法实现

    # coding=utf-8 def get_next_list(findding_str): # O(m) # 求一个字符串序列每个位置的最长相等前.后缀 j = 0 # 最长相等前缀的末位 nex ...

  8. 1414:【17NOIP普及组】成绩

    1414:[17NOIP普及组]成绩 时间限制: 1000 ms         内存限制: 65536 KB提交数: 27975     通过数: 17779 [题目描述] 牛牛最近学习了 C++入 ...

  9. 只要引用这个js就会页面加载完毕自动弹出提示框

    IE浏览器不支持ES6语法, 此代码为翻译并修改过的,使用的bable网站翻译 (function (win) { // 生成遮罩和弹出层,返回弹出层DOM对象 var createMsgBox = ...

  10. 《CSOL大灾变》开发记录——武器购买逻辑开发

    上次完成了武器购买界面设计,这次来完成武器购买逻辑与武器选择逻辑. 武器购买逻辑分为两个部分,一个部分是GUI部分的逻辑,也就是购买菜单,一个是武器游戏数据更新的逻辑,也就是实际中玩家获取武器的逻辑开 ...