使用 Echo 框架在 Golang 中安装 SSL 证书时出现问题(客户端向 HTTPS 服务器发送了 HTTP 请求。)

Problem installing SSL Certificade in Go Lang with Echo framework (Client sent an HTTP request to an HTTPS server.)

我已经使用 Echo 框架构建了一个 Go 服务器,我获得了 TLS 证书和一个域名,但是当我尝试请求时我收到消息 "Client sent an HTTP request to an HTTPS server." 并且当我尝试从 IP 地址访问服务器时使用端口 443 的 EC2,它表示连接不安全:

当我将服务器改为80端口通过域名访问时,出现如下错误:

我正在使用 StartTLS 函数启动服务器

e.Logger.Fatal(e.StartTLS(":80", "/etc/letsencrypt/live/anltcsprod.enrtt.com/fullchain.pem", "/etc/letsencrypt/live/anltcsprod.enrtt.com/privkey.pem"))

我的域或证书有问题吗?

默认情况下,端口 80 通过 HTTP 进行通信。 443 保留用于 HTTPS 流量。假设没有其他问题,您应该可以简单地将 e.StartTLS() 更改为:

e.Logger.Fatal(e.StartTLS(":443", "/etc/letsencrypt/live/anltcsprod.enrtt.com/fullchain.pem", "/etc/letsencrypt/live/anltcsprod.enrtt.com/privkey.pem"))

例如localhost:4000

改为使用https://localhost:4000