Fix Nginx redirected you too many times

Fix Nginx redirected you too many times

问题:

配置自己的服务器的时候,因为每次输入www.proger.cn 来访问比较麻烦,但是直接输入 proger.cn 又无法访问,所以在 nginx 上配置了一个重定向

源码里是这样写的

1
2
3
4
5
6
7
8
9
10
11
server {
listen 80 default_server;
# listen [::]:80 default_server;

return 301 https://proger.cn$request_uri; # 这段代码301重定向

# SSL configuration
#
listen 443 ssl;
server_name www.proger.cn;
}

但是访问的时候,网址发现如下问题

解决方法:

修改代码为

1
2
3
4
5
6
7
8
9
10
11
server {
listen 80 default_server;
# listen [::]:80 default_server;
if ($http_x_forwarded_proto = "http") { # 加一层判断
return 301 https://proger.cn$request_uri; # 这段代码301重定向
}
# SSL configuration
#
listen 443 ssl;
server_name www.proger.cn;
}

over~👏


学习文章:https://mp.weixin.qq.com/s/uYd72aUb9wvUcjICFLREgg

感谢阅读,勘误、纠错或其他请联系progerchai@gmail.com,或者点击这里提 issue 给我
欢迎交流 👏,你的每一次指导都可以让我进步


本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!