Nginx转发请求错误

说明:记录一次使用Nginx转发请求的错误;

场景

公司内部有两台服务器都跑了后端项目,在使用Nginx做请求分发时,我发现其中有台服务器一直没有处理请求(没打印相关的日志信息),于是我修改了下Nginx的配置,让请求只转发到这台服务器上,发现前端项目报错,无法处理请求。

排查

首先排查了是不是程序报错了,使用java -jar手动启动了项目,发现没得问题,控制台没有打印错误信息。于是,我去查看Nginx的日志信息,发现以下日志信息;

vbnet 复制代码
 [error] 15740#0: *731 connect() failed (113: No route to host) while connecting to upstream,

解决

这台跑后端项目的服务器,防火墙没有开放端口,即server.port。Nginx将请求转发过来时,被防火墙拦截住了。可敲下面的命令查看、开放端口,设置完后刷新防火墙配置生效。

powershell 复制代码
# 查看防火墙允许的端口
sudo firewall-cmd --list-ports

# 设置防火墙允许访问的端口,如3306
sudo firewall-cmd --zone=public --add-port=3306/tcp --permanent

# 刷新防火墙配置
sudo firewall-cmd --reload

需要移除防火墙开放端口,敲下面的命令,同样,设置完需刷新防火墙配置才能生效;

powershell 复制代码
# 移除防火墙开放的某端口,如22
sudo firewall-cmd --zone=public --remove-port=22/tcp --permanent

当然,也可以直接关闭防火墙,相关命令如下:

powershell 复制代码
# 查看防火墙状态
systemctl status firewalld

# 开启防火墙
systemctl start firewalld

# 关闭防火墙
systemctl stop firewalld

首次发布

hezhongying.blog.csdn.net/article/det...

相关推荐
程序员黑豆3 小时前
Java类型推断完全指南:从var到菱形运算符,掌握使用限制与最佳实践
java·前端·ai编程
To_OC3 小时前
踩了个 TS 的坑之后,我终于把 type 和 interface 掰明白了
前端·react.js·typescript
GreenTea4 小时前
深度解读 Anthropic 多智能体报告:更强的模型 ≠ 更好的协调
前端·后端·算法
风流 少年4 小时前
Spring AI 2.0:Memory
java·后端·spring
浮生望4 小时前
前端API工程化:用 Mock 数据与 Axios 配置实现独立于后端的并行开发
前端
万少4 小时前
给 DeepSeek Harness 装个"应用商店":一条命令,595 个插件随你逛
前端·javascript·后端
波波0075 小时前
C# 15 重磅新特性: 带标签 break 与 continue:重新定义嵌套循环控制流
服务器·前端·c#
Brown.alexis5 小时前
es6知识点1-自备使用
前端·ecmascript·es6
記億揺晃着的那天6 小时前
NAS 内网域名访问为什么需要浏览器授权
网络·nginx·js·nas
小爬的老粉丝6 小时前
JavaScript 纯前端预览 WPS:先识别容器,再路由解析器
前端·javascript·wps