我在ELB上安装了SSL。我在ELB中有一个EC2实例,可以通过SSL(IIS Windows 2008服务器)访问该网站。
混淆是当我使用非HTTPS并且我在我的应用程序中执行重定向到HTTPS区域时,我收到错误。
在侦听器区域进行一些挖掘,我可以看到ELB上的端口443转发到有意义的实例上的端口80,但是我该如何处理这种情况?
目前,我已经“入侵”了它通过在我的实例上添加一个自签名证书,然后在实例上将443从ELB转发到443,但这种方式无视这一点?!
关于如何构建这种方法的任何建议都会很棒!
答案 0 :(得分:2)
您的负载均衡器上有端口80和443转发到您实例上的端口80,因此您需要弄清楚如何区分它们。
ELB设置标题值,以便您可以区分这两种类型的请求。
看一下http://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/TerminologyandKeyConcepts.html#x-forwarded-headers,但要检查的值是X-Forwarded-Proto - 这应该有http或https,显然如果它是http,那么你会重定向到https。< / p>