[英]Redirecting http to https using nginx behind AWS load balancer
我已经搜寻了很多东西,我觉得这是我项目的最后障碍。 我正在尝试将所有http通信重定向到https。
当前,当键入domain.info时,它将重定向到https://domain.info:80并返回ERR_SSL_PROTOCOL_ERROR
但是用443代替80可以使我的网页正常运行。
我的服务器也位于负载均衡器的后面,我的证书在LB中,服务器中没有。 我正在使用NGINX作为我的网络服务器。 基本上这是我的设置:
用户> https>负载均衡器> http>服务器
提前非常感谢!
server {
listen 80 default_server;
server_name _;
return ....;
}
server {
listen 80 default_server;
server_name _;
return 301 https://$host$request_uri;
}
要么...
server {
listen 443 ssl default_server;
server_name foo.com;
}
server {
listen 443 ssl default_server;
server_name foo.com;
}
直接在负载均衡器中,您可以添加重定向规则,您是否尝试过使用它?
在负载平衡器侦听器中,更新HTTP:80的默认规则,并按如下所示进行配置:
HTTP 80: default action
IF
Requests otherwise not routed
THEN
Redirect to https://#{host}:443/#{path}?#{query}
Status code:HTTP_301
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.