gpt4 book ai didi

linux - nginx http 到 https 重定向问题

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:35:51 25 4
gpt4 key购买 nike

我正在尝试重定向 http://example.com , https://example.com , http://www.example.comhttps://www.example.com .服务器通过 ELB 通过 443 端口监听 http 和 https 请求。

nginx 配置:

server {    
listen 443;
server_name example.com;
return 301 $scheme://www.example.com$request_uri;
}

server {
listen 443 default;
server_name www.example.com;
//ssl stuffs
}

只有http://example.comhttps://www.example.com正在按预期工作。但是 http://www.example.com将进入无限重定向循环。

配置文件可能有什么问题。任何帮助将不胜感激。

最佳答案

创建 server block 来处理重定向。

server {
listen 80;
server_name www.example.com example.com;
return 301 https://www.example.com$request_uri;
}
server {
listen 443;
server_name example.com;
return 301 https://www.example.com$request_uri;
}
server {
listen 443;
server_name www.example.com;
// ...
}

更新 1:

使用 X-Forwarded-Proto 请求 header 帮助您识别客户端用于连接到您的服务器的协议(protocol)(HTTP 或 HTTPS)。

server {
listen 443;
server_name example.com;
return 301 https://www.example.com$request_uri;
}
server {
listen 443;
server_name www.example.com;
if ($http_x_forwarded_proto = 'http') {
return 301 https://www.example.com$request_uri;
}
// ...
}

来源:http://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/x-forwarded-headers.html

关于linux - nginx http 到 https 重定向问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32302070/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com