如何在SSL终端负载均衡器后面设置nginx以重定向到某个主机的https
您好我在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的条件.
我个人更喜欢第一种方法,因为我发现它更清洁. (编辑:台州站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- Heroku的Nginx反向代理失败了SSL握手
- django – 将应用程序级用户名/用户ID注入nginx/Apache日志
- ruby-on-rails-为使用Rails 4,nginx和乘客的用户设置自定义
- 后处理Nginx反向代理响应的最佳方法
- mysql – PDOException:SQLSTATE [HY000] [2002] php_netw
- 使用nginx和Drupal,如何为存在的静态文件和目录提供404错误
- 网络 – Nginx:直接在text / plain中返回$remote_addr
- node.js-NGINX:使用域/路径在同一服务器上的多个节点js应用
- NGinx将websocket从80扩展到websocket端口
- ubuntu – 如何调试为什么我的服务器在每个请求nginx/unico