标签: http-status-code-502

AWS 负载均衡器 502 错误网关

我在带有应用程序负载均衡器的 EC2 上托管的 Node/express 中编写了微服务。

有些用户甚至在请求到达服务器之前就收到 502 错误。

我在每个实例内注册每个日志,并且没有这些请求的日志,我有紧接在 502 之前的请求,以及紧接在 502 之后的请求,这就是为什么我假设该请求永远不会到达服务器。大多数用户通过刷新页面或使用匿名选项卡来解决此问题,这会连接到另一台计算机(我们有 6 个)。

我可以从负载均衡器日志中看出,负载均衡器几乎立即响应 502 请求。我猜这可能是 TCP RST。

我很久以前也遇到过类似的问题,我不得不将keepAliveTimeout和添加headersTimeout到节点配置中。这是我的设置(仍然使用 60 年代的 LB 默认值):

server.keepAliveTimeout = 65000;
server.headersTimeout = 80000;
Run Code Online (Sandbox Code Playgroud)

所有实例的指标,尤其是内存和 CPU 使用率都很好。

这些 502 错误是在我们进行更新后开始的,其中我们引入了多个软件包,例如 axios。一开始我以为可能是axios,因为默认没有开启keep-alive。但这没有用。除了axios之外,我们只使用request

关于如何调试/解决此问题的任何提示?

amazon-ec2 amazon-web-services node.js amazon-elb http-status-code-502

9
推荐指数
1
解决办法
5万
查看次数

Google 云负载均衡器导致错误 502 - failed_to_pick_backend

当我将谷歌云平衡器与 CDN 结合使用时,我遇到了错误 502,问题是,我很确定我在设置负载平衡器时一定做错了什么,因为当我删除负载平衡器时,我的网站运行得很好。

\n

这就是我在此处配置负载均衡器的方式\n

\n\n

检查负载均衡器日志消息时,它显示一条错误,指出 failed_to_pick_backend 。我尝试重新配置负载平衡器,但没有帮助。

\n

我刚刚开始学习 Google Cloud,我的知识非常有限,如果有人能逐步向我展示如何解决这个问题,我将不胜感激。谢谢你!

\n
\n

load-balancing google-cloud-platform http-status-code-502

7
推荐指数
2
解决办法
1万
查看次数

gcp cloud 在标头之前运行上游连接错误或断开/重置。重置原因:协议错误

我有一个与 webpack 捆绑在一起的节点应用程序,我正在尝试将其部署到云运行。为了能够在云运行中加载超过 32 MB(设定限制)的文件,我将标头('Transfer-encoding' : 'chunked')添加到 webpack 配置文件中。(该文件是一个 min.js 文件,是网站的缩小版本,在点击 url 时加载)。

在本地,一切运行正常,但是当此更改部署在云运行上时,在部署后单击应用程序 url 时会出现以下错误:

(502错误)

“上游连接错误或在标头之前断开/重置。重置原因:协议错误”

我在部署中禁用了 http2 端到端选项。

这是添加 header 的 webpack 文件

webpack.config.js

开发服务器:{

    contentBase: path.resolve(__dirname, 'build'),

    host: '0.0.0.0',
    port: process.env.PORT || 8601,
    sockPort: 'location',
    disableHostCheck: true,
    devServer: {
       headers: {
         'Transfer-encoding': 'chunked',
       },
    },
    
}
Run Code Online (Sandbox Code Playgroud)

google-cloud-platform webpack http2 google-cloud-run http-status-code-502

7
推荐指数
2
解决办法
2万
查看次数

CORS 错误突然显示 – 站点直到今天都运行良好

从今天早上开始,我的网站在 Chrome 中遇到 CORS 错误,试图从 CDN 加载字体真棒字体。生产和开发服务器都受到影响。我没有改变任何东西,错误完全出乎意料:

已从来源“ https://www.xxxx.com ”访问“ https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/fonts/fontawesome-webfont.woff2 ”中的字体被 CORS 策略阻止:请求的资源上不存在“Access-Control-Allow-Origin”标头。Origin ' https://www.xxxx.com ' 因此不允许访问。响应具有 HTTP 状态代码 502。

我已经添加了

Header set Access-Control-Allow-Origin "*"

到我服务器的 .htaccess 无济于事。

我需要做什么才能消除此错误?

font-awesome http-status-code-502

5
推荐指数
0
解决办法
1万
查看次数

无服务器 Lambda 和 API 网关的 CORS 问题

解决了

以下问题只是由我的 Lambda 中构造的响应对象的 body 属性引起的。我忘记对数据进行字符串化,body: data而不是返回body: JSON.stringify(data). 这个响应问题似乎触发了 API Gateway 的错误,导致请求失败并出现一些相当混乱的错误消息。

问题

我正在使用 React、Serverless 和 Stripe API 开发电子商务网站。我的前端 React 应用程序正在使用 Axios 向我的 Lambda 函数发出 GET 请求,该函数已通过 API 网关公开。Lambda 函数依次查询 Stripe API 并将 Stripe 响应数据返回给我的 React 应用程序。但是,当我的 React 应用程序尝试调用 Lambda 时,我遇到了 CORS 问题,它收到以下错误:

Failed to load: No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://localhost:3000' is therefore not allowed access. The response had HTTP status code 502.
Run Code Online (Sandbox Code Playgroud)

在 Insomnia 中查询 Lambda 终端节点会返回 502 响应 …

aws-lambda aws-api-gateway serverless-framework axios http-status-code-502

5
推荐指数
1
解决办法
6806
查看次数

如何修复 NGINX 502 Bad Gateway 错误?

我正在一个有角度的应用程序中研究网络套接字。我让它通过 nginx 连接到 python 后端。我发现大约 90% 的时间我都会收到 502“Bad Gateway”错误。我会这样做:

  1. 在浏览器中加载页面并连接 Web 套接字
  2. Python后端发送数据到Angular前端
  3. 断开网络套接字
  4. 尝试重新连接 Web 套接字 <-- 502 Bad Gateway 错误
  5. Chrome 中的硬重载
  6. 在浏览器中加载页面并连接 Web 套接字 <-- 没有 502 错误

我不明白为什么会发生这种情况。我不知道为什么会收到 502 错误。我也无法弄清楚为什么进行硬重新加载可以解决问题。我尝试过的事情:

  • 增加 nginx 日志级别以进行调试。日志仍然没有任何有用的信息。
  • 我不保留任何网络套接字对象的状态。我这样做是为了防止某些东西被缓存在某个地方。
  • 我总是使用关闭代码 1000 关闭网络套接字
  • 我在服务器上手动运行python服务,以便可以观看。当502错误发生时,服务不会显示任何异常。
  • 将nginx max_fails 设置为0。将fail_timeout 设置为0。这些更改似乎都没有任何效果。(我在其他答案中找到了这个建议)

我应该寻找什么来帮助我解决这个问题?

编辑:这是我的 nginx conf.d 文件:

server {
  listen  80;

  index index.html;
  root /var/www/mysite;

  location / {
    access_log  /var/log/nginx/mysite/ui.access.log;
    error_log /var/log/nginx/mysite/ui.error.log;
    try_files $uri $uri/ /index.html;
  }

  location /ws/ {
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection "Upgrade"; …
Run Code Online (Sandbox Code Playgroud)

nginx websocket http-status-code-502

5
推荐指数
1
解决办法
9547
查看次数

我的 NodeJS 应用程序无缘无故地显示 502 错误

我的 digitalocean Droplet 有一个很大的问题,你能帮帮我吗?

我有一个 nodeJS 应用程序,它可以与 MySQL 一起使用,我使用 Nginx + Ubuntu

但无缘无故,我得到了 502 bad gateway

我升级了 Droplet,三天后我的应用程序再次关闭

但在我的 digitalocean 平台上真正奇怪的是 CPU % 和内存都很好

现在我已经将我的 Droplet 升级到了最后一个包

你能帮我吗

当我执行这个命令时sudo tail -30 /var/log/nginx/error.log

我收到这个错误

[error] 989#989: *6611 connect() failed (111: Connection refused) while connecting to upstream, client:
Run Code Online (Sandbox Code Playgroud)

我想指出的是,我的应用程序已经运行良好超过一年了

这是 nginx 代码

server {

        root /var/www/html;

        index index.html index.htm index.nginx-debian.html;

        server_name domain.app;

        location / {
                proxy_pass http://localhost:3001;
                proxy_http_version 1.1;
                proxy_set_header HTTP_X_FORWARDED_FOR $remote_addr;
                proxy_set_header Upgrade $http_upgrade;
                proxy_set_header Connection 'upgrade';
                proxy_set_header Host $host; …
Run Code Online (Sandbox Code Playgroud)

ubuntu nginx node.js pm2 http-status-code-502

1
推荐指数
1
解决办法
1814
查看次数