我已在 AWS EC2 实例上部署了 Spring Boot 应用程序,并且尝试通过从 GoDaddy 购买的自定义域来访问它。但是,我在尝试通过 HTTPS 连接时遇到了问题。
这是我到目前为止所做的:
EC2 设置:我已在 EC2 实例上成功部署了 Spring Boot 应用程序。当我通过 HTTP 上的公共 IP 直接访问该应用程序时,该应用程序工作正常。
域名和 DNS 配置:
我希望可以通过 HTTPS 访问我的应用程序,但是当我尝试在 Postman 或浏览器中使用域(例如,https://api.mydomain.com)访问我的应用程序时,我在 Postman 中收到以下错误:
复制代码 错误:连接 ECONNREFUSED 13.49.000.000:443
这是我迄今为止尝试过的:
您已在 ACM 中创建 SSL 证书,但尚未将该 SSL 证书附加到任何内容。仅创建 SSL 证书并不能神奇地使 SSL 适用于该域。您必须实际配置服务器来提供 SSL 证书。
不幸的是,由于您将域直接指向 EC2 服务器,因此您根本无法使用 AWS ACM 提供的 SSL 证书。 ACM 提供的证书仅可用于 AWS 负载均衡器、CloudFront 发行版和 AWS API 网关。
如果您想继续使用当前的基础设施,而不在 EC2 服务器前面添加其中一项 AWS 服务,那么您将必须以其他方式获取 SSL 证书,例如通过 Let's Encrypt。获得 SSL 证书后,您必须将 Spring Boot 配置为侦听端口 443 并提供该证书。