当前位置:   article > 正文

记录一次1Panel配置SSL导致的面板访问失败_1panel申请证书失败

1panel申请证书失败

问题描述

今天在使用1Panel配置网站的时候,给域名上传了SSL证书、开启了https访问。

然后面板就进不去了,浏览器报告连接不安全。

在这里插入图片描述

猜测导致问题的原因是,OpenResty把所有访问该域名的请求都重定向到了https。(最后研究发现该猜测错误)

发生这件事有以下几个条件:

  • 正在配置的网站域名和面板域名相同,都是xxx.example.com。
  • 面板先前没有开启HTTPS访问。
  • 配置HTTPS时选择了HTTP自动访问HTTPS(如图)
  • 配置完成后对https://xxx.example.com进行了访问

在这里插入图片描述

经过研究发现,其实这是浏览器HSTS(HTTP Strict Transport Security)导致的问题。
直接原因是1Panel在OpenResty配置文件中为我们默认添加了如下的响应头:

add_header Strict-Transport-Security "max-age=31536000"; 
  • 1

我们在首次访问http://xxx.example.com以后,OpenResty会通过如下指令重定向到https://xxx.example.com/

if ($scheme = http) {
    return 301 https://$host$request_uri;
}
  • 1
  • 2
  • 3

301重定向访问https后,浏览器就会收到上述的Strict-Transport-Security Header,并记录下来,有效期是一年。

下次使用HTTP协议访问xxx.example.com域名,浏览器就会自动进行307重定向到HTTPS。而前面提到,面板没有开启HTTPS,导致面板无法进入。

你甘心让自己的面板持续一年无法访问吗?如果不是的话,就看看下面的修复步骤吧

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/凡人多烦事01/article/detail/369407
推荐阅读
相关标签