nginx配置https,重定向后https变成了http

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了nginx配置https,重定向后https变成了http相关的知识,希望对你有一定的参考价值。

参考技术A proxy_redirect http:// https://;

rewrite ^ https:// request_uri? permanent;

https://www.cyberciti.biz/faq/linux-unix-nginx-redirect-all-http-to-https/

Nginx配置Https重定向 Chrome跳转到%2a.xxx.com的问题

今天配置Nginx的Https证书遇到了一个坑。

一般配置好证书后,都会配置一下https的重定向,让一般的http访问跳转到https访问去。

简单配置如下:

server 
    listen 80;
    server_name www.sxsc.ltd sxsc.ltd stest.sxsc.ltd;
    return      301 https://$server_name$request_uri; 

配置好后,用chrome访问 www.sxsc.ltd 时,会莫名其妙跳转到 https://%2A.sxsc.ltd/

我删除上面 www.sxsc.ltd的重定向配置后,重启nginx, 访问 www.sxsc.ltd 问题依旧。

我都把重定向的配置删掉了,为什么还是会重定向呢? 首先考虑是其他配置影响的,查看了nginx启动加载的所有配置文件,发现并没有相关配置影响。

于是考虑是否是nginx进程缓存了之前的配置,杀掉所有nginx进程后,问题还是存在。奇了怪了,为什么还会跳转呢?突然想到是不是浏览器的原因呢?

换火狐,访问 www.sxsc.ltd 发现不再跳转到 https://%2A.sxsc.ltd

问题找到了,就是chrome可能会记录用户的重定向历史。

通过这个小问题,总结一点经验:

当遇到url重定向问题时,首先考虑是不是服务器端配置影响的,如果不是,立马换一个浏览器,考虑客户端的问题。

以上是关于nginx配置https,重定向后https变成了http的主要内容,如果未能解决你的问题,请参考以下文章

nginx 配置https 并解决重定向后https协议变成了http的问题

Nginx SSL 结合Tomcat 重定向URL变成HTTP的问题

https设置后Nginx重定向到默认欢迎页面

Nginx配置Https重定向 Chrome跳转到%2a.xxx.com的问题

使用 Nginx 将 HTTP 重定向到 HTTPS

nginx+tomcat遇到的https重定向到http问题