nginx 反代 总是 502 ,部分页面

2017-12-27 10:16:17 +08:00
 sbmzhcn

nginx 反向代理,其中一个页面可能返回的数据非常的大,导致这个页面只要打开就会 502,然后整个网站 502,过一会其它页面就可以正常访问了。但只要打开这个页面就会 502,

如果你不使用 nginx proxy_pass 直接打开 ip htto://x.x.x.x:8088/proxy/http://google.com 这样的页面就会没事。

请问谁遇到相同问题的,网上已经打过很多解决方案都不行。

#proxy_buffer_size 128k;
#proxy_buffers 4 256k;
#proxy_busy_buffers_size 256k;
#fastcgi_buffers 16 256k;
#fastcgi_buffer_size 256k;
#fastcgi_busy_buffers_size 256k;
proxy_buffers 8 512k;
proxy_buffer_size 2024k;
proxy_busy_buffers_size 2024k;
proxy_read_timeout 3000;
proxy_set_header Host $host;

上面这些参数都尝试过,无用。

5911 次点击
所在节点    NGINX
9 条回复
sbmzhcn
2017-12-27 10:46:09 +08:00
[error] 589#0: *8 recv() failed (104: Connection reset by peer) while reading response header from upstream,
blless
2017-12-27 11:06:23 +08:00
我们后来用 haproxy 还有长连接好像就不会了 具体哪个才是关键没有再测试,我估计长连接可能性大一点
roricon
2017-12-27 11:10:00 +08:00
感觉还需要提供一下那个页面返回的数据大概有多大., 你的服务器什么配置等信息.
sbmzhcn
2017-12-27 12:14:40 +08:00
此问题让我太困惑了。 测试了好久。 应该是因为我写的 tornado 服务器的问题。https://github.com/rfyiamcool/toproxy/blob/master/toproxy/proxy.py 利用它写了一个代理服务器,我翻墙的话一点问题没有,如果不翻墙立即返回一个 ERR_CONNECTION_RESET 连接已重置,然后事个网站暂时都这样了,等一会才恢复。

一个可能是长连接问题,
一个可能是超时的问题,为什么我翻墙就没任何问题
darrh00
2017-12-27 12:28:27 +08:00
我以为这个问题是 livid 提的, 因为 V2EX 老是 502
jeremaihloo
2017-12-27 14:26:49 +08:00
@darrh00 #5 livid 小号:)滑稽
anjing01
2017-12-27 14:58:41 +08:00
内网解析看看...特别是内网自己有 dns 的
pennz
2017-12-27 23:56:37 +08:00
所以。最后解决没有咯?我之前也遇到过。发现是数据过大时,反向代理会把数据先存到缓存目录下,但是该缓存没权限,导致缓存数据无法写入。赋予写权限后问题就解决了。~~
sbmzhcn
2017-12-28 10:11:22 +08:00
没有解决,依我目前的技术水平是解决不了,目前事情比较多,这个太花时间了,暂时不解决了。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/417916

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX