您安装了 SSL 证书,打开网站后,预计会看到安全的 HTTPS 连接。.
相反,浏览器会显示一条警告,例如 “您的连接不安全”、“证书已过期”、“证书名称不匹配”,” 或者其他 SSL/TLS 错误。.
SSL 证书错误可能由证书本身、Web 服务器、DNS、CDN 或反向代理、重定向、证书链,甚至访问者的设备引起。.
关键在于,在更换证书或更改服务器设置之前,先确定究竟是哪一层出现了故障。.
本指南介绍了 如何修复 SSL 证书错误, ,包括证书过期、主机名不匹配、证书链不完整、HTTPS 重定向循环、混合内容、SSL 握手失败以及其他常见的 HTTPS 问题。.
SSL 故障排除: 识别错误 → 检查证书 → 验证主机名 → 检查证书链 → 测试服务器 → 修复配置 → 重新测试。.

什么是 SSL 证书错误?
当浏览器或客户端无法成功建立或验证预期的安全 HTTPS 连接时,就会发生 SSL 证书错误。.
问题可能出现在多个层面上:
- 证书有效期
- 域名或主机名的覆盖范围
- 证书链
- 私钥
- Web 服务器配置
- TLS 配置
- DNS
- CDN 或反向代理
- HTTPS 重定向
- 网站资源
- 客户端设备设置
这就是为什么更换 SSL 证书并不总是正确的解决方案。.
SSL 错误 ≠ 证书必然有问题。.
常见的 SSL 证书错误
| SSL 问题 | 共同事业 | 典型解决方案 |
|---|---|---|
| 证书已过期 | 续订失败 | 证书的续期与部署 |
| 名称不匹配 | 主机名未包含在内 | 签发正确主机名的证书 |
| 不受信任的证书 | 信任还是链的问题 | 使用受信任的证书和正确的证书链 |
| 证书链不完整 | 缺少中间证书 | 安装正确的链条/全链条 |
| 私钥不匹配 | 证书/密钥对错误 | 安装对应的私钥 |
| 混合内容 | HTTPS 页面加载 HTTP 资源 | 更新资源 URL |
| 重定向循环 | 冲突的 HTTPS 规则 | 正确的代理/重定向配置 |
| SSL 握手失败 | TLS/配置不兼容 | 检查服务器和 TLS 配置 |
| 返回了错误的证书 | 虚拟主机/SNI/CDN 配置 | 正确的主机名映射 |
1. SSL 证书已过期
每份 SSL/TLS 证书都有一个有效期。.
如果证书在未能成功续期和部署的情况下过期,浏览器可能会向访问者发出警告,提示该连接不可信。.
请检查:
- 证书到期日期
- 自动续订状态
- 续订日志
- 域名验证
- 更新后的证书是否已实际部署
- 续订后Web服务器是否已重新加载
一个常见的错误是认为:
证书已续期 = 网站正在使用新证书。.
在 Apache、Nginx、负载均衡器或 CDN 继续提供旧证书服务的同时,新证书可能已存在于服务器上。.
如何修复过期的 SSL 证书
如果您使用的是托管主机服务,请在主机控制面板中查看 SSL、AutoSSL 或 Let's Encrypt 的状态。.
在自管服务器上:
- 续期或重新签发证书。.
- 确认新证书文件是否存在。.
- 请确认证书所涵盖的主机名是否正确。.
- 请确认Web服务器指向的是正确的文件。.
- 测试 Web 服务器配置。.
- 重新加载Web服务器。.
- 在外部测试该证书。.
不要仅仅因为证书已续期就认为部署成功了。.
刷新 → 部署 → 重新加载 → 验证。.
2. SSL 证书名称不匹配
当服务器提供的证书未涵盖访问者请求的主机名时,就会发生主机名不匹配的情况。.
例如,证书可能涵盖:
example.com
但一位访客打开了:
https://www.example.com/
如果 www.example.com 如果证书中未包含该域名,浏览器可能会报告主机名不匹配。.
同样的问题可能会影响以下子域名:
shop.example.com api.example.com mail.example.com
如何解决证书名称不匹配的问题
检查证书的“主体替代名称”(SAN),并确认所请求的主机名是否包含在其中。.
如有必要:
- 使用正确的域名重新签发证书
- 同时添加“root”和“www”两个主机名
- 为符合条件的子域名使用适当的通配符证书
- 如果流量被路由到了错误的服务器,请更正 DNS
- 检查 CDN 自定义域名的配置
请记住,诸如以下这样的通配符:
*.example.com
该规则对主机名有具体的覆盖范围规定,不应认为其涵盖了所有可能的域名变体。.
3. SSL 证书链不完整
服务器证书通常是信任链的一部分。.
从概念上讲:
服务器证书 → 中间证书颁发机构 → 受信任的根证书颁发机构
服务器通常需要提供相应的中间证书信息,以便客户端能够构建信任链。.
如果证书链不完整,即使其他客户端似乎运行正常,某些浏览器或应用程序仍可能会拒绝该证书。.
如何修复不完整的证书链
从您的证书提供商处下载正确的 intermediate 证书或证书包,并根据其文档配置服务器。.
对于 Nginx,配置的证书文件通常包含服务器证书,后面跟着所需的中间证书。.
例如:
ssl_certificate /etc/ssl/certs/example.com-fullchain.pem; ssl_certificate_key /etc/ssl/private/example.com.key;
请勿随意拼接证书文件。.
正确的链条和锉刀使用顺序很重要。.
4. SSL 证书与私钥不匹配
SSL 证书与特定的密钥对相关联。.
如果您使用错误的私钥安装证书,Web 服务器可能会拒绝该配置,或者 HTTPS 可能会失败。.
以下情况可能会发生:
- 生成了多个CSR
- 服务器上存在多个证书
- 旧的证书文件被重复使用了
- 迁移过程中复制了证书,但未复制其对应的密钥
- 文件重命名不正确
正确的关系是:
证书 ↔ 对应的私钥
请妥善保管私钥,切勿公开。.
5. 浏览器提示“您的连接不安全”
该浏览器警告是一种症状,而非单一的诊断结果。.
可能的原因包括:
- 证书已过期
- 主机名不匹配
- 不受信任的证书
- 证书链不正确
- 本地系统时钟问题
- 网络截获
- 服务器配置问题
首先检查证书信息,而不是立即重新安装 WordPress 或更改 DNS。.
确定:
- 正在提供哪张证书?
- 是谁签发的?
- 它涵盖哪些主机名?
- 它什么时候过期?
- 信任链是否有效?
6. NET::ERR_CERT_DATE_INVALID
浏览器可能会显示类似以下的错误信息:
NET::ERR_CERT_DATE_INVALID
常见原因包括:
- 证书已过期
- 证书尚未生效
- 计算机日期或时间不正确
- 服务器或证书部署错误
如果只有一位访客遇到该错误,而外部证书测试显示证书有效,请检查该访客设备的系统时间。.
如果所有人都遇到这种情况,请检查该网站提供的证书。.
7. NET::ERR_CERT_COMMON_NAME_INVALID
此错误通常表明,请求的主机名与证书所涵盖的名称不匹配。.
例如:
证书: example.com 请求: www.example.com
根据根本原因,修复证书覆盖范围、DNS 路由、虚拟主机、CDN 主机名配置或重定向行为。.
8. NET::ERR_CERT_AUTHORITY_INVALID
这通常意味着浏览器不信任该证书颁发机构,或者无法建立有效的信任链。.
可能的原因包括:
- 自签名证书
- 私有/内部证书颁发机构
- 中间链不正确
- 由不可信来源签发的证书
- 拦截 HTTPS 的网络或安全软件
对于公共网站,请使用访客所用主流客户端所信任的证书,并正确配置证书链。.
9. 安装 SSL 后的混合内容问题
有时,SSL 证书完全有效,但浏览器仍会报告与安全相关的问题,因为该 HTTPS 页面是通过 HTTP 加载资源的。.
例如:
https://www.example.com/
加载:
http://www.example.com/image.jpg http://www.example.com/script.js http://www.example.com/style.css
这被称为 混合内容.
如何修复混合内容
请检查:
- 图片
- CSS 文件
- JavaScript
- 网页字体
- 背景图片
- 嵌入内容
- 主题设置
- 插件设置
- 硬编码的数据库 URL
使用浏览器开发者工具来识别 HTTP 资源。.
然后将这些资源更新为有效的 HTTPS 网址。.
不要认为SSL插件应该是首选解决方案。在可行的情况下,通常最好先修正底层的URL配置。.
10. 启用 HTTPS 后重定向过多
在安装 SSL 后,当多个系统对请求是否已使用 HTTPS 存在分歧时,可能会发生重定向循环。.
一种常见的架构是:
访客 → CDN/代理 → 源服务器 → WordPress
访问者通过 HTTPS 连接到 CDN,但 CDN 与源服务器通信的方式可能会导致应用程序误以为原始请求是 HTTP 请求。.
WordPress 会重定向到 HTTPS,代理服务器会重复该请求,从而导致该过程陷入循环。.
如何解决 HTTPS 重定向循环问题
勾选所有可以强制使用 HTTPS 的层:
- CDN
- 负载均衡器
- 主机控制面板
- Apache
- Nginx
- .htaccess
- WordPress
- SSL 插件
例如以下配置:
CDN强制使用HTTPS
服务器强制使用HTTPS
WordPress 插件强制使用 HTTPS
在某些环境下可以正常工作,但冲突的HTTPS检测也可能导致重定向循环。.
确定 TLS 终止的位置,并正确配置转发协议信息。.
一套连贯的HTTPS策略 > 多条盲转规则。.
11. SSL 握手失败
当客户端和服务器建立安全连接所需的参数时,就会发生 SSL/TLS 握手。.
握手可能会失败,原因包括:
- 证书问题
- TLS 协议不兼容
- 密码配置
- SNI 问题
- CDN/源站 SSL 配置
- 客户端不兼容
- 服务器配置错误
不要仅仅为了让某个过时的客户端能够运行,就在不了解其利弊取舍的情况下削弱服务器安全性。.
请使用适合您环境的最新服务器和 TLS 配置指南。.
12. 正在提供错误的 SSL 证书
即使您安装了正确的证书,访问者仍可能会收到另一份证书。.
以下情况可能会发生:
- 处理该请求的虚拟主机不正确
- SNI 配置不正确
- DNS 指向另一台服务器
- CDN 使用自己的证书
- 反向代理终止 TLS 连接
- 一台旧服务器仍在接收流量
请务必测试从公共互联网可见的证书——而不仅仅是存储在您服务器上的证书文件。.
磁盘上的证书 ≠ 提供给访问者的证书。.
13. SSL 在不带 WWW 时可以正常工作,但在带 WWW 时则无法工作
如果这样行的话:
https://example.com/
但以下代码会失败:
https://www.example.com/
检查:
- 证书的SAN覆盖范围
- www DNS 记录
- Web 服务器虚拟主机
- CDN 主机名设置
- HTTPS 重定向
在将其中一个重定向到首选的标准版本之前,应正确处理这两个主机名。.
14. SSL 在 WWW 上有效,但在根域名上无效
情况也可能恰恰相反。.
如果 www.example.com 虽然能用,但 example.com 如果失败,请检查证书是否包含根域名,以及根域名的 DNS 记录是否指向正确的基础设施。.
如果 HTTPS 连接在浏览器收到该重定向之前就已失败,则重定向无法解决证书验证问题。.
15. 迁移至新服务器后出现 SSL 错误
服务器迁移经常会导致 SSL 问题,因为 DNS、证书和私钥都必须指向正确的环境。.
请检查:
- DNS A/AAAA 记录
- 证书已安装在新服务器上
- 匹配的私钥
- 虚拟主机配置
- IPv6路由
- CDN源站配置
- 旧服务器仍在接收流量
在对新的 HTTPS 配置进行充分测试之前,请勿关闭旧环境。.
16. 更改 DNS 后出现 SSL 错误
在过渡期间,DNS 更改可将不同的访问者引导至不同的基础设施。.
如果一台服务器拥有正确的证书,而另一台则没有,SSL 的行为可能会显得不一致。.
验证:
- A类记录
- AAAA记录
- CNAME 记录
- CDN 代理状态
- 旧的IP地址
IPv6 值得特别关注。如果遗漏了 AAAA 记录,可能会导致部分访问者被引导至一个证书过期或不正确的服务器。.
17. CDN SSL 证书错误
使用 CDN 或反向代理会建立至少两条可能非常重要的加密连接:
访客 ↔ CDN
此外,根据配置的不同:
CDN ↔ 源服务器
即使 CDN 与源服务器的连接出现故障,面向访客的证书仍可保持有效。.
请检查:
- Edge 证书状态
- 原产地证书
- 主机名覆盖范围
- 证书过期
- 源 TLS 模式
- DNS 配置
当访问者与您的服务器之间存在代理服务器时,请不要仅针对面向浏览器的证书进行故障排除。.
18. WordPress SSL 错误
在完成 SSL 迁移后,WordPress 可能会出现其他 HTTPS 问题。.
常见症状包括:
- 混合内容
- 登录重定向循环
- 管理后台重定向问题
- 图片仍使用 HTTP
- WordPress 地址不正确
- 网站地址错误
- 插件生成的 HTTP 资源
请检查:
“设置” → “通用”
并验证目标 URL 是否使用 HTTPS:
WordPress 地址: https://www.example.com 网站地址: https://www.example.com
在服务器上实际启用 HTTPS 之前,请勿更改这些值。.
19. Apache SSL 配置错误
如果在编辑 Apache 配置后 HTTPS 无法正常工作,请在重启或重新加载服务之前验证配置。.
apachectl configtest
请检查:
- 证书文件路径
- 私钥路径
- 虚拟主机
- 主机名配置
- 证书链
- 443 端口的配置
根据您使用的 Linux 发行版不同,Apache 可能会以某个服务名称运行,例如 apache2 或 httpd.
20. Nginx SSL 配置错误
在重新加载 Nginx 之前,请测试其配置:
nginx -t
典型的 SSL 配置包括:
ssl_certificate /etc/ssl/certs/example.com-fullchain.pem; ssl_certificate_key /etc/ssl/private/example.com.key;
请检查:
- 文件路径不正确
- 证书链缺失
- 私钥错误
- 重复的服务器块
- server_name 错误
- 443端口冲突
只有在配置测试成功后,才重启 Nginx。.
21. Let's Encrypt 证书续期失败
自动 SSL 可以减少维护工作,但续期仍可能失败。.
可能的原因包括:
- DNS 更改
- 验证路径被阻断
- 防火墙更改
- Webroot 路径错误
- 续订配置错误
- 域名不再指向该服务器
- DNS 验证凭据验证失败
如果您使用 Certbot 或其他 ACME 客户端,请检查其续期状态和日志。.
不要等到证书过期后才发现自动续期功能已无法正常工作。.
22. SSL 证书在桌面端正常工作,但在移动端无法使用
如果 HTTPS 在某些设备上可以正常工作,但在其他设备上却无法正常工作,请排查以下情况:
- 证书链不完整
- 客户信任差异
- 旧版操作系统
- 旧版浏览器
- TLS 兼容性
- 网络截获
在确定服务器配置正确之前,请先通过多个独立客户端进行测试。.
23. HTTPS 在一个浏览器中可以正常工作,但在另一个浏览器中却不行
特定于浏览器的行为可能由以下原因引起:
- 缓存的证书信息
- 浏览器扩展程序
- 本地代理/安全软件
- 不同的信任存储库
- 过时的浏览器版本
如果证书通过了独立的外部测试,且其他设备运行正常,请排查受影响的客户端环境。.
24. 由设备时间不正确导致的 SSL 错误
证书验证取决于时间。.
如果计算机或手机的日期设置有误,可能会错误地判定证书:
- 尚不生效
- 已过期
如果只有一台设备报告了与日期相关的证书错误,请在修改网站之前,先核对其时钟、日期和时区。.
25. 迁移到 HTTPS 后,HTTP 资源仍然存在
将网站迁移到 HTTPS 后,旧的 HTTP URL 可能会保留在:
- 数据库内容
- 菜单
- 小工具
- 主题选项
- CSS
- 页面构建器
- 结构化数据
- 规范标签
将重要的内部引用更新为相应的最终 HTTPS URL。.
对于 WordPress,在执行任何大规模的 URL 替换操作之前,请先备份数据库。.
如何逐步诊断 SSL 证书错误
不要随意更改配置,请按照以下顺序操作。.
步骤 1:记录确切的错误信息
捕获浏览器或应用程序的错误代码。.
步骤 2:检查公钥证书
确定访问者实际收到的是哪张证书。.
步骤 3:检查有效期
请核实有效期。.
第 4 步:检查主机名覆盖范围
请确认所请求的主机名是否出现在证书的有效名称中。.
第 5 步:验证证书链
检查客户端是否能够构建一条有效的信任链。.
第 6 步:检查 DNS
确认该域名指向目标基础设施。.
第 7 步:检查 CDN 或代理
确定 TLS 在何处终止。.
第 8 步:检查源服务器
检查 Apache、Nginx 或主机控制面板的 SSL 配置。.
第 9 步:检查重定向
检查是否存在循环或冲突的 HTTPS 规则。.
第 10 步:检查混合内容
检查由 HTTPS 页面加载的资源。.
第 11 步:进行外部重新测试
如有必要,请尝试使用其他浏览器、设备或网络进行测试。.
错误 → 层级 → 根本原因 → 修复 → 重新测试。.
用于 SSL 故障排除的实用 OpenSSL 命令
在已安装 OpenSSL 的系统上,您可以检查远程 TLS 连接:
openssl s_client -connect example.com:443 -servername example.com
该 -服务器名称 在测试使用 SNI 托管多个 HTTPS 域名的服务器时,此选项非常重要。.
您可以使用以下命令检查证书文件:
openssl x509 -in certificate.crt -text -noout
在生产环境中使用命令行工具时请务必谨慎,切勿在公共日志、截图或支持论坛中泄露私钥。.
重新安装 SSL 证书能解决所有错误吗?
不。.
当已安装的证书或证书链不正确时,重新安装证书可能会有所帮助,但这并不能自动解决以下问题:
- DNS 错误
- 混合内容
- 重定向循环
- CDN 配置
- 不正确的 WordPress 网址
- 客户端时钟问题
- 虚拟主机错误
先进行诊断。只有当证书部署确实存在问题时,才进行重新安装。.
更换主机能解决 SSL 错误吗?
通常不是。.
当服务商无法支持所需的 TLS 配置,或者存在更广泛的基础设施问题时,迁移主机服务可能是合理的,但大多数 SSL 错误应首先直接进行诊断。.
如果迁移操作未正确执行,更换服务器实际上可能会引发额外的证书、DNS 和重定向问题。.
SSL 错误与搜索引擎优化
持续存在的HTTPS问题可能会影响用户和搜索引擎访问您的网站。.
修复 SSL 问题后,请验证:
- HTTP URL 能正确重定向到 HTTPS
- HTTPS 页面返回预期的状态码
- 规范 URL 使用 HTTPS
- 内部链接使用HTTPS
- XML 网站地图的 URL 使用 HTTPS
- 重要资源已正确加载
我们的 技术SEO检查清单 作为更广泛的技术网站审计的一部分,涵盖了这些信号。.
如何预防 SSL 证书问题
最佳的 SSL 故障排除策略是预防可避免的故障。.
- 启用可靠的自动续订功能
- 监控证书过期情况
- 妥善记录 DNS 记录
- 备份服务器配置
- 在重新加载之前测试 Apache/Nginx 的配置
- 使用正确的证书链
- 保护私钥
- 同时测试根域名和 www 域名
- 测试重要的子域名
- 检查 CDN/源站 SSL 配置
- 服务器迁移后请检查 HTTPS
如果您是首次配置 HTTPS,请按照我们的 SSL证书分步安装指南 在排查具体错误之前。.
SSL 证书错误故障排除对照表
| 症状 | 先检查 | 可能区域 |
|---|---|---|
| 证书已过期 | 有效期 | 续订 |
| 名称不匹配 | SAN/主机名 | 证书/DNS |
| 授权无效 | 信任链 | 证书链 |
| 混合内容 | HTTP 资源 | 网站内容 |
| 重定向过多 | HTTPS 规则 | 代理/服务器/应用程序 |
| 握手失败 | TLS 配置 | 服务器/CDN/客户端 |
| 证书错误 | 公钥证书 | SNI/虚拟主机/CDN |
| 在某些设备上可以正常使用 | 链/客户端兼容性 | 服务器/客户端 |
| 迁移后出现故障 | DNS + 证书 | 新基础设施 |
SSL 证书错误常见问题解答
为什么会出现 SSL 证书错误?
常见原因包括证书过期、主机名不匹配、证书链不完整、服务器配置错误、证书错误、CDN 问题、TLS 不兼容或客户端问题。.
如何解决“您的连接不安全”的问题?
请仔细检查具体的浏览器错误信息以及所提供的证书。在进行任何更改之前,请核对其有效期、主机名覆盖范围、签发机构、信任链以及服务器配置。.
如何解决 NET::ERR_CERT_DATE_INVALID 错误?
请检查证书是否已过期或尚未生效。如果该问题仅影响一台设备,请同时核对该设备的日期、时间和时区设置。.
如何解决 NET::ERR_CERT_COMMON_NAME_INVALID 错误?
请确认证书是否涵盖所请求的具体主机名,并检查 DNS、虚拟主机和 CDN 的配置。.
为什么我的 SSL 证书在不带 www 时能正常使用,但带 www 时却无法使用?
该证书可能不涵盖 www 主机名,www 的 DNS 记录可能有误,或者服务器/CDN 可能未针对该主机名进行配置。.
安装 SSL 后,为什么我的网站会显示混合内容?
该 HTTPS 页面仍在通过 HTTP 加载一个或多个资源。请使用浏览器开发者工具查找这些请求,并将它们更新为有效的 HTTPS 网址。.
为什么启用 SSL 后 WordPress 会出现过多的重定向?
CDN、反向代理、服务器、WordPress 或 SSL 插件可能存在冲突的 HTTPS 检测或重定向规则。请确定 TLS 在何处终止,并配置一套一致的重定向策略。.
SSL 证书在有效的情况下,是否仍会引发错误?
是的。即使服务器发送的证书链不完整、将证书分配给错误的主机名、使用了错误的虚拟主机,或者网站存在其他HTTPS配置问题,证书本身仍可能有效。.
当 HTTPS 无法正常工作时,我应该重新安装 SSL 吗?
只有在诊断出问题后才可进行操作。重新安装无法解决与该问题无关的其他问题,例如 DNS 错误、重定向循环、混合内容或客户端时钟问题。.
如何防止 SSL 证书过期?
使用可靠的自动续订功能,并监控续订过程。不要在未经核实的情况下,就认为自动化功能会无限期地正常运行。.
SSL 证书错误检查清单
- ✓ 记录具体的 SSL 错误
- ✓ 检查证书过期时间
- ✓ 检查主机名覆盖范围
- ✓ 验证证书链
- ✓ 验证证书/私钥对
- ✓ 检查 DNS A 和 AAAA 记录
- ✓ 检查 CDN 或反向代理
- ✓ 检查公钥服务器上提供的证书
- ✓ 检查 Apache/Nginx 配置
- ✓ 检查 443 端口
- ✓ 检查 HTTPS 重定向
- ✓ 检查混合内容
- ✓ 检查 WordPress 网址
- ✓ 勾选“自动续订”
- ✓ 测试 root 和 www 域名
- ✓ 测试重要的子域名
- ✓ 尝试使用另一台设备/浏览器
最终建议
在学习时 如何修复 SSL 证书错误, ,请避免仅因浏览器的警告就随意更改服务器设置。.
首先查明具体的错误,并确定受影响的层。.
过期了吗? → 更新并部署。.
名称不匹配? → 检查主机名覆盖范围和 DNS。.
不可信? → 检查证书颁发机构及其证书链。.
混合内容? → 替换不安全的资源 URL。.
重定向循环? → 检查 CDN、代理、服务器和应用程序规则。.
握手失败? → 检查 TLS 配置和兼容性。.
证书有误? → 检查 DNS、SNI、虚拟主机和 CDN 的配置。.
最有效的工作流程是:
错误 → 证书 → 主机名 → 证书链 → DNS → 服务器 → CDN → 应用程序 → 重新测试
问题解决后,请确认证书的自动续期功能是否正常,以免证书过期时再次出现相同的 SSL 错误。.





