微信開發需外網訪問本地服務,配置域名解析、Tomcat server.xml 端口改為 80、Host 綁定域名,外網 ping 通但無法通過 URL 訪問項目,僅本地可訪問。
「是個人家庭寬帶的話,請換一個端口,為了天朝和諧的需要,80 端口是被運營商封掉的。」
| 限制項 | 說明 |
|---|---|
| 80/443 端口 | 電信/聯通/移動普遍封鎖入站,防止自建網站 |
| 公網 IP | 多為動態 IP,甚至無公網 IP(大內網/CGNAT) |
| 備案要求 | 域名解析到國內服務器需 ICP 備案 |
ngrok http 8080 獲取臨時 https 域名。# Tomcat server.xml
<Connector port="8080" protocol="HTTP/1.1" ... />
# 穿透映射 8080
ngrok http 8080
# 獲得 https://xxx.ngrok.io -> 微信後台配置
server.xml Host 的 name 與域名一致 → 虛擬主機匹配失敗。家庭寬帶無法直接使用 80 端口對外服務,必須使用內網穿透工具將本地非 80 端口映射為公網 HTTPS 域名,或直接部署至已備案的雲服務器。