背景
宝塔面板有个让我无法理解的 BUG ,在网站开启强制 SSL 或者重定向根目录后,SSL证书会出现续签失败的问题。经检查发现是宝塔默认的站点配置文件不太合理导致,ACME 部分的配置没有指定 root 目录,这就导致 acme.sh 脚本没有正确读取到验证文件存放的目录。既然如此,我们可以在创建好站点后,修改站点的配置文件使证书可以正常续签。
无论是开启了重定向还是反代,都可以参考该教程。
操作步骤
1.登录宝塔面板 - 网站 - 点击对应站点的设置按钮。
2.点击配置文件 - 找到下图红框标识的代码
3.将红框中的内容替换为以下代码(记得修改站点运行目录的路径)
#一键申请SSL证书验证目录相关设置
location ^~ /.well-known/acme-challenge/ {
# 默认MIME类型
default_type "text/plain";
# 站点运行目录
root /www/wwwroot/www.xxxx.com;
}
4.修改后保存更改
最好是重新加载 Nginx 程序确保配置生效,宝塔实测没重载也可以生效,然后就可以啦~