GCP虚拟机外部IP可正常访问 域名访问返回Err_Connection_Refused求助
排查步骤
- 首先验证域名解析准确性:本地执行
nslookup xxx.app或dig xxx.app,确认返回的A记录值与GCP虚拟机外部IP完全一致。如果匹配失败,可执行本地DNS缓存清理命令后重试:Windows下执行ipconfig /flushdns,Linux下执行sudo systemd-resolve --flush-caches。 - 检查Web服务的虚拟主机配置:如果Web服务仅配置了响应IP访问的请求,未绑定对应域名
xxx.app,收到域名请求时会直接拒绝连接。Nginx环境需检查server块的server_name配置是否包含目标域名;Apache环境需检查VirtualHost的ServerName/ServerAlias配置项。 - 确认虚拟机系统内的防火墙规则:GCP VPC防火墙开放端口不代表虚拟机内部放行端口,执行
sudo iptables -L -n检查INPUT链是否允许80/443端口入站,若使用ufw管理防火墙则执行sudo ufw status确认端口开放状态。 - 修正Web服务监听配置:从你提供的
netstat -a输出可见,HTTP服务仅监听了IPv6的[::]:80端口,未监听IPv4的0.0.0.0:80,如果你的接入网络不支持IPv6访问就会出现连接拒绝问题。可修改Web服务配置开启IPv4 80端口监听,或开启IPv6套接字的IPv4兼容模式。 - 排查HTTPS跳转配置问题:如果站点配置了HTTP强制跳转HTTPS,但Web服务未开启443端口监听、未配置对应SSL证书,也会返回连接拒绝错误,可直接尝试通过
https://xxx.app访问验证是否存在该问题。
内容的提问来源于stack exchange,提问作者dgarg
相关产品推荐
相关产品推荐

