如何修复 nginx 在外部监听 8080 端口和在内部监听 80 端口?

问题描述 投票:0回答:1

Nginx 启动并监听 80 端口,但只能通过 8080 端口从外部访问。

curl 0:80
在 200 响应下工作正常并且
curl 0:80
响应连接被拒绝但在外部,
curl example.com:80
被卡住并且从不响应 而 curl
example.com:8080
响应 200 ufw 上允许端口 80

最初我在问题开始前将端口 80 转发到 8080,然后我从

/etc/ufw/before.rules
中删除了端口转发配置设置,但问题仍然存在。 我停止了我的 nginx 服务器并且它停止了,然后我再次启动服务器并且问题开始了。 我的 nginx 配置为运行在 80 端口,
netstat -lpn
确认 nginx 运行在 80 端口。 但它不是在端口 80 上而是在端口 8080 上响应外部 我也试过
nc -z 0 80 ; echo $?
,它返回0。 但是
nc -z 8080 ; echo $?
返回 1 但我找不到监听端口 8080 的进程。 我也试过了
ps aux

ubuntu nginx server sysadmin
1个回答
0
投票

我通过刷新 NAT 表中的链并删除子链来修复它

sudo ufw disable
sudo iptables --table nat --flush
sudo iptables --table nat --delete-chain
sudo ufw enable
© www.soinside.com 2019 - 2024. All rights reserved.