it编程 > 数据库 > MsSqlserver

nginx反向代理60s超时报错问题解决

30人参与 2025-02-19 MsSqlserver

情况描述:由于网络原因,必须经过反向代理去分发不同的服务功能,同时由于代理的服务特殊,执行时间通常会很长,所以超过60秒就会报错。经排查,未经由nginx反向代理,直接访问代理服务并不会出现60超时问题。报错内容:

an error occurred.

sorry, the page you are looking for is currently unavailable.
please try again later.

if you are the system administrator of this resource then you should check the error log for details.

faithfully yours, nginx.

报错如图:

原因分析和处理:网上百度说是nginx超时问题引起的,然后找到很多关于长连接keepalive_timeout,客户端请求体响应时间client_body_timeout,响应时间send_timeout,客户端消息头读取时间client_header_timeout等参数的配置,但是经过测试,均无效果。

后增加了proxy_read_timeout参数,设置了超过60秒,问题解决。

参数解释:

nginx中的proxy_read_timeout指令用于设置代理连接的超时时间。当nginx作为代理服务器转发请求给后端服务器时,如果后端服务器在指定的时间内没有响应,nginx将终止连接并返回错误。

该指令的默认值为60秒,可以根据需要进行调整。较短的超时时间可以更快地检测到后端服务器的故障,但同时也可能因为服务器响应时间过长而误判为故障。较长的超时时间则可以容忍后端服务器的响应延迟,但也会增加客户端请求的等待时间。

需要注意的是,proxy_read_timeout指令只控制读取响应的超时时间,不包括与后端服务器建立连接的时间。如果需要设置连接超时时间,可以使用proxy_connect_timeout指令。

到此这篇关于nginx反向代理60s超时报错问题解决的文章就介绍到这了,更多相关nginx反向代理超时报错内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网!

(0)
打赏 微信扫一扫 微信扫一扫

您想发表意见!!点此发布评论

推荐阅读

在linux中执行sql文件方式

02-19

Nginx 解决504错误超时问题小结

02-19

keepalived+nginx实现网站高可用性

02-19

SQL Server 数据库中游标(Cursor)的使用方法与完整实例

02-18

sql server 数据库锁教程及锁操作方法

02-18

使用 sql-research-assistant进行 SQL 数据库研究的实战指南(代码实现演示)

02-20

猜你喜欢

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论