【问题标题】:nginx: connect() failed (111: Connection refused) while connecting to upstream - after update nginx -nginx:连接到上游时连接()失败(111:连接被拒绝)-更新nginx后-
【发布时间】:2021-06-22 03:33:05
【问题描述】:

将 nginx 更新到 1.19 版后,我的网络服务器停止工作。

当我通过浏览器发送请求时,我在浏览器中收到 502 网关超时错误

当我检查 nginx 错误日志时,我得到了这个错误

2021/03/24 06:25:50 [error] 56837#56837: *7775 connect() failed (111: Connection refused) while connecting to upstream, client: 85.208.98.19, server: bienestarmutuo.org, request: "GET /ten-principles-of-the-new-education/ HTTP/1.1", upstream: "fastcgi://10.64.10.43:8050", host: "mutualwelfare.org"

【问题讨论】:

  • 问题很模糊,但是嘿...欢迎!上游负责允许来自外部源的连接。这意味着以前运行的东西(无论它是什么)不再或阻止 nginx 尝试与之通信。 5XX 系列的 http 错误代码是服务器错误。 502 Bad Gateway - 服务器充当网关/代理并从上游服务器收到无效响应。检查 nginx 将流量发送到的任何目标......以及该目标的路径(防火墙......任何东西......)。一点通识教育也会让你感到惊奇!
  • (111: Connection denied) 意思就是它所说的。为什么你今天处于这个“十字路口”有很多可能的问题。确保添加更多细节以吸引有用的注意力。过去,将 nginx“更新”到另一个版本(按数字)从未突然导致网络通信停止。即使有一些复杂的配置,也没有什么能做到这一点。一般来说,nginx 配置测试会在更新方面出现一些错误(特定于版本,重大更改),就像一只忙碌的蜜蜂......检查目的地!享受吧!

标签: php nginx fastcgi http-status-code-502


【解决方案1】:

经过数小时试图找到问题的根源(许多安装和清除)

对我来说,问题是在 nginx 和 php 中使用不同的端口“名称”。

在 php (/etc/php/8.0/fpm/pool.d/bienestarmutuo-org8050.conf) 我有

listen = localhost:8050

在 nginx (/etc/nginx/sites-available/bienestarmutuo.org.conf) 我有

fastcgi_pass 10.64.10.43:8050;

改为:

在 Nginx 中

fastcgi_pass 127.0.0.1:8050;

在php中

listen = 127.0.0.1:8050

重启php和nginx,一切都恢复正常了。

注意:使用 127.0.0.1 代替 localhost,保存 DNS 查找。

我的解决方案是在 php 和 nginx 中对 ip:port 使用相同的引用 -> 127.0.0.1

【讨论】:

  • 这是你必须这样做的方式。 FPM 配置说:在端口 8050 上侦听,但仅在本地 ip (localhost/127.0.0.1) 上尝试从任何其他 IP 连接将不被接受。很高兴您自己发现了问题
猜你喜欢
  • 2014-02-26
  • 2012-11-21
  • 2020-03-13
  • 2013-11-03
  • 2019-12-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多