You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Waitress部署Flask API无法连接问题排查求助

解决Waitress部署Flask API局域网访问问题(Wi-Fi环境防火墙拦截)

核心问题分析

从现象来看,问题出在笔记本Wi-Fi网卡的防火墙规则适配性上:尽管手动添加了8080端口的入站规则,但Wi-Fi环境下系统防火墙存在优先级更高的默认拦截策略,或者规则绑定的网卡范围未覆盖Wi-Fi适配器。

具体排查&修复步骤

1. 确认防火墙规则的网卡绑定范围

  • 打开Windows防火墙高级设置(运行wf.msc),找到你添加的8080端口入站规则
  • 切换到「高级」标签页,查看「适用的网络」选项:
    • 若仅勾选「域」或「专用」,而Wi-Fi连接被归类为「公用」网络,规则不会生效
    • 改为勾选「所有网络」,或确保Wi-Fi的网络类型与规则适用范围匹配

2. 调整Wi-Fi网络的配置文件类型

  • 打开Windows设置 → 网络和Internet → Wi-Fi → 点击当前连接的Wi-Fi名称
  • 查看「网络配置文件」类型:
    • 若为「公用」,系统默认拒绝大部分入站连接,手动规则可能被覆盖
    • 将其改为「专用」后,重新测试局域网访问

3. 验证Waitress的绑定地址正确性

启动Waitress时,务必绑定笔记本Wi-Fi的实际局域网IP,而非0.0.0.0或以太网IP:

waitress-serve --host=192.168.x.x --port=8080 your_flask_app:app

(替换192.168.x.x为笔记本Wi-Fi的实际IP)

4. 检查防火墙规则的基础设置

  • 确认入站规则的协议为TCP,端口范围明确包含8080
  • 确保规则的「操作」是「允许连接」,而非「允许连接如果安全」(后者需额外验证,可能导致拦截)

5. 针对Wi-Fi网卡创建专属规则

若上述步骤无效,直接为Wi-Fi网卡创建规则:

  • 在高级防火墙中新建入站规则,选择「端口」→ 输入8080(TCP)→ 允许连接
  • 在「适用的网络」中,仅勾选Wi-Fi对应的网络适配器(可在「网络连接」中查看网卡名称)

额外验证方法

  • 用netstat -ano | findstr :8080确认Waitress确实在监听指定的Wi-Fi IP和8080端口
  • 在笔记本本地执行curl http://192.168.x.x:8080,验证API服务本身是否正常

内容的提问来源于stack exchange,提问作者jwill

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.24 16:22:06