現象描述
本地伺服器內網 IP + 8080 端口可正常訪問 Tomcat 項目,但使用騰訊雲分配的公網 IP + 8080 端口無法訪問。
核心排查步驟
- 確認公網 IP 是否真正綁定
登入騰訊雲控制台,查看該 CVM 實例是否分配了公網 IP。若選購時未勾選「分配公網 IP」,則無法直接從外網訪問,需後續申請彈性公網 IP (EIP) 並綁定。
- 檢查安全組規則(關鍵)
騰訊雲預設安全組僅放行 22 (Linux SSH)、3389 (Windows RDP) 和 80 端口。
操作:控制台 → 安全組 → 編輯規則 → 入站規則 → 添加:
類型:自定義 TCP,端口:8080,來源:0.0.0.0/0,策略:允許。
- 伺服器內部防火牆
Windows:控制台 → Windows Defender 防火牆 → 進階設定 → 入站規則 → 新增規則 → 端口 8080 允許。
Linux:firewall-cmd --permanent --add-port=8080/tcp && firewall-cmd --reload 或 iptables -I INPUT -p tcp --dport 8080 -j ACCEPT。
- Tomcat 綁定地址配置
檢查 server.xml 中 Connector 的 address 屬性。預設為空(綁定所有介面),若被改為 127.0.0.1 需改回或刪除該屬性。
- 端口占用檢查
netstat -ano | findstr 8080 (Windows) 或 netstat -tlnp | grep 8080 (Linux) 確認 Tomcat 確實在監聽 8080。
驗證方式
在本機瀏覽器訪問 https://公網IP:8080/項目名,若仍失效,可用 telnet 公網IP 8080 測試端口連通性。
避坑提醒
- 騰訊雲輕量應用伺服器需在「防火牆」頁面單獨放行 8080,與 CVM 安全組分開設置。
- 若使用 Nginx 反向代理,確保 Nginx 也監聽公網介面且 upstream 指向正確內網地址。