如何在SSL终端负载均衡器后面设置nginx以重定向到某个主机的http
您好我在EC2(负载均衡器)后面的EC2中有一个Web服务器(运行nginx),它终止了SSL连接. 如果有请求到www.domain.com,它将转到http到ELB并传递给nginx服务器上的http 如果有对secure.domain.com的请求,它应该转到https到ELB并传递给http到nginx服务器. 如果请求来自http://secure.domain.com,我希望nginx进行301重定向到https://secure.domain.com. 我可以通过使用ELB注入的http_X_Forwarded_Proto标头来实现这一点.所以像
问题是“if()”似乎在服务器块上运行,因此对这个if()和http://www.domain.com/foo(在不同的服务器块中)的请求被拾取301到https://secure.domain.com/foo. 如何配置nginx只是将secure.domains.com重定向到https而不影响我的所有其他虚拟主机? 谢谢 最佳答案
一种选择是拥有默认服务器块. Nginx Doc server_name 第二个选项是使用if循环来检查请求是https且host是secure.domain.com的条件.
我个人更喜欢第一种方法,因为我发现它更清洁. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |