我通过使用 ELB、自动缩放、RDS 和 ELB 外部的一个 Node ec2 实例在 AWS 上创建了一个架构(希望它不会错)。现在我不明白,我可以如何在此架构上实现 SSL。
让我简要解释一下:
- 我已经创建了一个 Classic Load Balancer。
- 在自动缩放组中创建。
- 将实例分配给自动缩放组。
- 最后,我创建了一个用于 Node 的实例,它位于负载均衡器和自动缩放组之外。
现在,当我对我的负载均衡器实现 SSL 时,内部实例正在与 HTTP 请求上的 Node 实例通信,并且因为 Node 实例在负载均衡器之外,所以请求被阻止。
谁能帮我为这个架构实现 SSL。
抱歉,如果您对我的架构感到困惑,如果有任何其他可能的最佳架构,请告诉我我可以更改我的架构。
谢谢,
最佳答案
当您有静态内容时,最好的办法是使用 S3 存储桶作为来源,从 Cloudfront 提供它。
关于SSL,您可以在ELB级别设置SSL,关注the documentation .
您的ELB 监听两个端口:80 和443 并仅使用其开放端口 80 与您的 ASG 实例通信。 因此,当安全请求到达 ELB 时,它将它们转发到您的服务器(ASG 中的 EC2)。然后,您的服务器监听端口 80,接收请求;如果请求有 X-FORWARDED-PROTO HTTPS,服务器什么都不做,否则它会设置它并转发/重写 URL 为安全的 URL,然后进程重新启动。
我希望这会有所帮助并注意 ERR_TOO_MANY_REDIRECTS
关于node.js - 如何在 ELB 内部设置 SSL 并与 ELB 外部的 Node 实例通信,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45750642/