如何排查AWS EC2上Flask应用(uWSGI部署)8080端口无法访问问题?
问题解决方法
核心原因
你的uWSGI服务当前仅绑定本地回环地址127.0.0.1,这个地址只能接收EC2实例内部的请求,外部设备无法通过实例公网IP访问该端口。
修复步骤
- 修改uWSGI启动命令,将绑定地址改为
0.0.0.0,让服务监听实例的所有网络接口:uwsgi --http 0.0.0.0:8080 --master -w server:app - 执行
sudo netstat -tlnp确认uWSGI现在监听的是0.0.0.0:8080而非127.0.0.1:8080。 - 从本地设备再次执行
tcping <实例IP地址> 8080,或直接用浏览器访问http://<实例IP地址>:8080,验证是否能正常获取Flask应用响应。
额外检查项
- 确认EC2安全组入站规则确实允许0.0.0.0/0(或你的本地设备公网IP)访问8080端口的TCP流量。
- 如果实例开启了防火墙(如iptables、ufw),需确保8080端口的入站流量被允许:
- ufw环境:执行
sudo ufw allow 8080/tcp - iptables环境:执行
sudo iptables -A INPUT -p tcp --dport 8080 -j ACCEPT
- ufw环境:执行
内容的提问来源于stack exchange,提问作者hilaw00
相关产品推荐
相关产品推荐

