我的知识记录

Nginx SSL证书更换后不生效,如何排查解决?

在更换 Nginx 的 SSL 证书后,如果浏览器访问仍然显示旧证书或提示证书异常,可能是配置、服务状态或客户端缓存等原因导致。以下是一些系统性的排查思路:

1. 确认证书文件是否正确替换

  • 检查新证书路径:确认新证书文件已上传并覆盖原文件。
  • 验证证书内容:使用命令查看证书有效期和域名信息,确保为新证书。
检查项 解决方法
文件路径 检查nginx配置中ssl_certificate路径
证书信息 使用openssl x509 -in cert.pem -text -noout

2. 核对 Nginx 配置是否生效

  • 配置是否加载成功:修改配置后需执行nginx -t测试语法,并重载服务。
  • 是否存在多站点冲突:多个SSL站点配置可能造成冲突,建议逐一排查。
检查项 解决方法
配置测试 执行nginx -t验证配置文件
重载服务 使用systemctl reload nginxnginx -s reload

3. 清除浏览器与CDN缓存

  • 本地浏览器缓存:即使服务器更新完成,浏览器仍可能使用旧证书缓存。
  • CDN或反向代理缓存:如使用CDN、云加速服务,需手动刷新节点缓存。
缓存类型 解决方法
浏览器缓存 使用隐私模式访问或清除SSL缓存
CDN缓存 登录CDN平台刷新证书缓存

4. 检查服务是否实际重启成功

  • 服务未完全重启:某些情况下,即使执行了reload,也可能未真正加载新证书。
  • 进程是否异常:检查Nginx主进程是否正常运行,是否有报错日志。
检查项 解决方法
进程状态 使用`ps aux
日志信息 查看/var/log/nginx/error.log
通过以上步骤,可以有效定位并解决 Nginx 更换 SSL 证书后不生效的问题。建议在每次更新证书后进行完整访问测试,确保服务稳定运行。
 

标签:Nginx- SSL证书- 配置更新- 缓存问题- 服务重启

更新时间:2025-05-15 19:03:27

上一篇:如何排查服务器443端口突然无法连接的问题?

下一篇:为什么网站打开正常,但在百度搜索中跳转成非正规网站?