nginx 网站设置https后出现302跳转解决办法

  • 内容
  • 评论
  • 相关

设置https后添加了http跳转到https,结果http链接基本跳转到了网站首页,包括百度之前已抓取的链接,经工具检测发现www.lmdouble.com 返回状态码为302,暂时性重定向。经查看nginx配置文件 nginx.conf发现在http跳转到https时写的是跳转到https://www.lmdouble.com 后面没带任何参数

#Jump to HTTPS lmdouble.com
 server { 
 listen 80; 
 server_name www.lmdouble.com; 
 rewrite ^(.*)$ https://www.lmdouble.com; 
 }

也难怪点击所有的http页面会跳转到首页,在代码后面添加参数 /$1 permanent 解决问题

#Jump to HTTPS www.lmdouble.com
 server { 
 listen 80; 
 server_name www.lmdouble.com; 
 rewrite ^(.*)$ https://www.lmdouble.com/$1 permanent; 
 }

 

再通过工具检测为正常的301 永久重定向

01 

通过此次问题在以后也可以解决一个问题,就是网站需要整体维护,又不用把站点关闭,可以通过修改rewrite规则达到访问所有页面都跳转到一个指定的页面。

#Jump to HTTPS dnzhai.com
 server { 
 listen 80; 
 server_name www.lmdouble.com; 
 rewrite ^(.*)$ https://www.lmdouble.com/error_page.html; 
 }

nginx 网站设置https后出现302跳转解决办法