为什么 Cloudflare SSL 证书显示已过期但源站正常?

文章导读
这种情况通常是浏览器缓存了旧证书信息,或者 Cloudflare 边缘证书与源站配置不匹配,而非源站证书真的失效。
📋 目录
  1. A 快速诊断命令
  2. B 为什么会这样
  3. C 分步处理
A A

这种情况通常是浏览器缓存了旧证书信息,或者 Cloudflare 边缘证书与源站配置不匹配,而非源站证书真的失效。

先说结论:多数情况下是本地缓存或加密模式设置问题,先检查 Cloudflare 后台状态再排查本地。

  • 先确认:登录 Cloudflare 后台查看 SSL/TLS 概览页状态
  • 先处理:清理浏览器缓存或更换网络环境测试
  • 再验证:使用命令行工具检查实际证书有效期

快速诊断命令

为避免系统语言环境导致命令失效,建议使用 openssl 直接解析证书日期:

openssl s_client -connect yourdomain.com:443 -servername yourdomain.com 2>/dev/null | openssl x509 -noout -dates

如果命令返回的 notAfter 日期早于当前时间,说明边缘证书确实过期;如果日期正常但浏览器仍报错,多为本地缓存问题。

为什么会这样

Cloudflare 的 SSL 架构分为边缘证书(Edge Certificate)和源站证书(Origin Certificate)。浏览器访问的是 Cloudflare 边缘节点,所以报错通常指边缘证书有问题,或者浏览器记录了旧的证书信息。

另一种常见情况是 SSL 加密模式设置为“完全(严格)”,但源站证书已过期或自签名,导致 Cloudflare 回源失败,间接引发连接异常。

为什么 Cloudflare SSL 证书显示已过期但源站正常?

分步处理

1. 检查 Cloudflare 后台状态

登录 Dashboard,进入 SSL/TLS -> Overview(概览)。查看 Edge Certificate 部分状态。如果边缘证书过期,通常会显示红色警告或“Reinitialize”(重新初始化)按钮。Universal SSL 通常会自动续期,若卡住可尝试禁用后重新启用。

注意:禁用后重新启用 Universal SSL 可能导致短暂服务中断,建议在低峰期操作。

2. 检查源站证书(如果使用 Origin CA)

SSL/TLS -> Origin Server 中查看 Origin CA 证书有效期。如果此处过期,需重新生成并部署到源站 Nginx/Apache。

为什么 Cloudflare SSL 证书显示已过期但源站正常?

3. 调整加密模式

临时将加密模式改为“完全”(非严格),测试是否恢复。若恢复,说明源站证书配置有误;若仍报错,问题在边缘侧或本地。

注意:排查完成后务必将加密模式恢复为“完全(严格)”,以降低安全风险。

4. 清理本地缓存

不同操作系统清理方式不同,请根据环境执行:

  • Windows: 打开命令提示符(管理员),运行 ipconfig /flushdns 清理 DNS 缓存。
  • macOS: 打开终端,运行 sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder
  • 浏览器 SSL 状态: Chrome 浏览器访问 chrome://net-internals/#ssl 点击