我的 GCP VM 服务器使用外部 IP 地址,但不使用域

My GCP VM server works with external IP address but not from domain

我正在努力解决一个奇怪的问题。我最近将我的托管从 godaddy 转移到 GCP(由于 godaddy 的一些域缓解,这是另一回事)。我复制了所需的文件并验证了我的 VM 外部 IP 地址在从 Internet 访问时工作正常。

然后我把godaddy DNS中的A记录和CNAME记录更新为这个外网IP地址。我确认它们已被传播。但我仍然得到 Err_Connection_Refused.

我怀疑 DNS 中存在问题.. 所以我将 DNS 移至 google 托管 DNS 并更新了我的主机 (godaddy) 上的名称服务器。但是网站还是打不开

当我从我的实例中执行 netstat -a 时,我看到以下内容:

Proto Recv-Q Send-Q Local Address           Foreign Address         State      
tcp        0      0 0.0.0.0:ssh             0.0.0.0:*               LISTEN     
tcp6       0      0 [::]:http               [::]:*                  LISTEN     
tcp6       0      0 [::]:ssh                [::]:*                  LISTEN   

我的机器OS是Debian 4.9.65-3+deb9u2

GCP VPC 防火墙的 HTTP 端口 80 和 HTTPS 端口 443 已启用,如下所示:

还检查了 Compute Engine 网络标签 http-server 和 https-server(已启用)

VM 上的 Netstat 输出

我的外网IP是http:// 但该网站没有 http://.app

A记录,NS都好看

经过大量研究,我想我找到了问题所在。我的域是一个 .app TLD,在其他几个 TLD 中是一个 HSTS TLD。这意味着默认情况下会为此类域请求 https 协议。我们需要启用 SSL 并在端口 443 上配置虚拟主机。它应该可以解决问题。呸!