我们有2个EC2实例,Nginx和Unicorn运行Rails . 我们在EC2中启动了Load Balancing选项 . 接下来,我们购买了SSL证书并使其在Load Balancer上运行 . 因此,现在我们有网址为https://app.mydomain.com工作 . 我们从Load Balancer的监听器中删除了HTTP . 现在,我们需要以某种方式将http://app.mydomain.com的任何传入请求路由到https://app.mydomain.com . 关于我们如何实现这一目标的任何建议?
先感谢您 .
3 回答
我有同样的情况,我通过以下方式解决:
您需要将负载 balancer 监听到端口80并进入您的ec2 instace,它作为节点运行,您可以将其配置为将任何http请求重定向到https .
在我的情况下,我在.htaccess文件中使用这一行
这是我的情况,而/ status是负载 balancer 检查器检查实例helath .
ELB设置
X-Forwarded-Proto
标头,您可以使用它来检测原始请求是否是HTTP,然后重定向到HTTPS .看看ELB docs .
您需要在apache或nginx文件中进行配置 . 使用此链接获取详细帮助 . https://serverfault.com/questions/67316/in-nginx-how-can-i-rewrite-all-http-requests-to-https-while-maintaining-sub-dom