AWS HTTPS 请求不适用于 EC2 负载均衡器
AWS HTTPS requests not working on EC2 Load Balancer
我有一个 EC2 实例,它是 运行 一个 NodeJS Web 应用程序,我想为我的实例启用 HTTPS 流量。我从 AWS 购买了域名并申请了 SSL 证书。
我还创建了一个目标组,它应该将流量重定向到 HTTP 端口 3000,因为我的节点应用程序 运行 在端口 3000 上。
我创建了一个负载均衡器,它应该监听 HTTPS 流量并将其重定向到目标组。
它似乎工作正常,但是当我点击 DNS 名称查看它是否工作时,我无法连接到服务器。你知道可能是什么问题吗。
我已经检查过,我的 EC2 实例已经打开了 HTTPS 请求,所以这应该不是问题所在。
您的屏幕截图显示您使用 ACM 和应用程序负载均衡器,因此您的 ALB 终止了 SSL。如果是,请确保:
- 您的负载均衡器有一个安全组,允许来自互联网的入站 443 和出站 3000 到您的 EC2 实例
- 托管节点应用程序的 EC2 实例有一个安全组,允许来自 ALB 的入站 3000
ALB 和实例之间的流量是 HTTP。 SSL 在 ALB 上终止,因此在 ALB 之后(在您的 VPC 内)您只是 http。
我有一个 EC2 实例,它是 运行 一个 NodeJS Web 应用程序,我想为我的实例启用 HTTPS 流量。我从 AWS 购买了域名并申请了 SSL 证书。
我还创建了一个目标组,它应该将流量重定向到 HTTP 端口 3000,因为我的节点应用程序 运行 在端口 3000 上。
我创建了一个负载均衡器,它应该监听 HTTPS 流量并将其重定向到目标组。
它似乎工作正常,但是当我点击 DNS 名称查看它是否工作时,我无法连接到服务器。你知道可能是什么问题吗。
我已经检查过,我的 EC2 实例已经打开了 HTTPS 请求,所以这应该不是问题所在。
您的屏幕截图显示您使用 ACM 和应用程序负载均衡器,因此您的 ALB 终止了 SSL。如果是,请确保:
- 您的负载均衡器有一个安全组,允许来自互联网的入站 443 和出站 3000 到您的 EC2 实例
- 托管节点应用程序的 EC2 实例有一个安全组,允许来自 ALB 的入站 3000
ALB 和实例之间的流量是 HTTP。 SSL 在 ALB 上终止,因此在 ALB 之后(在您的 VPC 内)您只是 http。