宝塔面板SSL证书链不完整需四步解决:一、合并域名证书与CA Bundle为fullchain.pem并上传;二、启用SSL插件“自动补全证书链”并强制更新;三、在Nginx配置中添加ssl_trusted_certificate指令指向fullchain.pem;四、用openssl或SSL检测工具验证链完整性。

如果您在使用宝塔面板部署网站后,浏览器访问时提示“您的连接不是私密连接”或“证书链不完整”,则很可能是服务器未正确配置完整的SSL证书链。以下是解决此问题的步骤:
一、重新上传包含完整证书链的PEM文件
宝塔面板要求将域名证书、中间证书和根证书合并为一个PEM格式文件上传,否则Nginx/Apache无法识别完整信任链。需确保证书文件中按顺序包含:域名证书 → 中间证书(CA Bundle),不包含私钥。
1、使用文本编辑器打开您的证书文件(如 domain.crt),确认其末尾是否包含以 -----BEGIN CERTIFICATE----- 开头的中间证书内容;若无,请从证书颁发机构获取对应的CA Bundle文件。
2、将域名证书内容粘贴至新文本文件顶部,紧接着换行后粘贴CA Bundle全部内容(确保两者均为PEM格式且无空行分隔)。
3、保存该文件为 fullchain.pem,上传至服务器任意目录(如 /www/wwwroot/yourdomain/)。
4、登录宝塔面板,进入【网站】→ 选择对应站点 → 【SSL】→【其他证书】→ 点击【手动添加证书】,将 fullchain.pem 内容粘贴至【证书(PEM格式)】框内,同时粘贴私钥至【密钥(KEY)】框内,点击【保存】。
二、通过宝塔SSL插件自动补全证书链
宝塔面板内置SSL插件支持自动检测并下载缺失的中间证书,适用于Let’s Encrypt等主流证书颁发机构签发的证书。
1、进入【网站】→ 选择对应站点 → 【SSL】→ 确认已启用HTTPS并绑定有效证书。
2、点击【证书设置】→ 勾选【自动补全证书链】选项。
3、点击【强制更新证书链】按钮,等待后台完成中间证书下载与合并。
4、刷新页面后查看【证书信息】区域,确认显示“证书链完整”且无红色警告标识。
三、手动修改Nginx配置文件补充ssl_trusted_certificate指令
当使用自定义证书路径或需兼容旧版客户端时,可通过直接编辑Nginx配置,显式指定可信证书链路径,增强链验证可靠性。
1、进入【网站】→ 选择对应站点 → 【配置文件】,定位到 server 段落中 ssl_certificate 和 ssl_certificate_key 所在位置。
2、在 ssl_certificate_key 行下方新增一行:ssl_trusted_certificate /www/wwwroot/yourdomain/fullchain.pem;
3、确认 fullchain.pem 文件权限为644,且路径与实际存放位置完全一致。
4、点击【保存】,再点击右上角【重载配置】使Nginx重新加载配置。
四、验证证书链完整性
配置完成后需通过外部工具验证服务端实际返回的证书链是否完整,避免本地缓存造成误判。
1、在终端执行命令:openssl s_client -connect yourdomain.com:443 -showcerts,观察输出中是否连续出现两个及以上 BEGIN CERTIFICATE 块。
2、访问 https://www.sslshopper.com/ssl-checker.html,输入域名,检查结果中【Certificate Chain】是否显示“Complete”。
3、在Chrome浏览器中点击地址栏锁形图标 → 【连接是安全的】→ 【证书有效】→ 查看【证书路径】,确认所有层级均显示绿色对勾且无黄色感叹号。









