技术解析

nginx 反代 总是 502 ,部分页面
0
2021-05-21 02:48:30
idczone

nginx 反向代理,其中一个页面可能返回的数据非常的大,导致这个页面只要打开就会 5美国服务器02,然后整个网站 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;

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


[error] 589*8 recv() failed (104: Connection reset by peer) while reading response header from upstream,

我们后来用 haproxy 还有长连接好像就不会了 具体哪个才是关键没有再测试,我估计长连接可能性大一点

感觉还需要提供一下那个页面返回的数据大概有多大., 你的服务器什么配置等信息.

此问题让我太困惑了。 测试了好久。 应该是因为我写的 tornado 服务器的问题。https://github.com/rfyiamcool/toproxy/blob/master/toproxy/proxy.py 利用它写了一个代理服务器,我翻墙的话一点问题没有,如果不翻墙立即返回一个 ERR_CONNECTION_RESET 连接已重置,然后事个网站暂时都这样了,等一会才恢复。
一个可能是长连接问题,
一个可能是超时的问题,为什么我翻墙就没任何问题

我以为这个问题是 livid 提的, 因为 V2EX 老是 502

livid 小号:)滑稽

内网解析看看...特别是内网自己有 dns 的

所以。最后解决没有咯?我之前也遇到过。发现是数据过大时,反向代理会把数据先存到缓存目录下,但是该缓存没权限,导致缓存数据无法写入。赋予写权限后问题就解决了。~~

没有解决,依我目前的技术水平是解决不了,目前事情比较多,这个太花时间了,暂时不解决了。

数据地带为您的网站提供全球顶级IDC资源
在线咨询
专属客服